== C++ == === 느낀점 === 처음 테스트한 파일이 러브데스티니의 가사여서 한글이 있었다..OTL 어쨋든 한글도 되게 만들었다.^^ 클래스도 써봤는데.. 본인이 보기에는 이쁘지만..^^ 남이 보기에는 영~~(아직 클래스를 못배웠다..ㅠ.ㅜ 2학기가 되어야 할텐데..ㅠ.ㅜ) 그래도 애교로 봐주시길..ㅎㅎ === 소스 === {{{ #include #include const bool TRUE=1; const bool FALSE=0; using namespace std; class stack { private: char *data_p; int where_is_save; int max_size_of_stack; public: stack( int data_size ) { data_p=(char*)malloc(data_size*sizeof(char)); max_size_of_stack=data_size; where_is_save=0; } ~stack() { free(data_p); } bool get_in(char save_data) { if (where_is_save != max_size_of_stack) { *(data_p+where_is_save)=save_data; ++where_is_save; return TRUE; } else return FALSE; } bool get_out(char *where_save_p ) { if (where_is_save) { --where_is_save; *where_save_p=*(data_p+where_is_save); return TRUE; } return FALSE; } void clear_data() { where_is_save=0; } }; int main() { //파일을 읽어옵니다. ifstream inputFile("source.txt"); if(!inputFile) { cout << "파일을 열 수 없습니다.\n"; return 0; } inputFile.seekg(0,ios_base::end); stack file_data(inputFile.tellg()); inputFile.seekg(0); char temp; //파일을 기록합니다. while (inputFile.get(temp)) { file_data.get_in(temp); } inputFile.close(); ofstream outputFile("result.txt"); if (outputFile == 0 ) { cout << "파일을 쓸 수 없습니다.\n"; return 0; } //기록을 역으로 재생하며 파일을 출력합니다. while (file_data.get_out(&temp)) { if (0>temp) { char temp_next; file_data.get_out(&temp_next); outputFile << temp_next << temp; } else outputFile << temp; } outputFile.close(); return 0; } }}} == Erlang == === 느낀점 === 별것 아닌데 잘 몰라서 30분 해맸다 -_ -; 지금 보니까 위에 C++ 소스도 뭔가 허접하다 -_ -;;; 아 민망 -_ -;; === 소스 === {{{ 18> lists:reverse("Hello. CAUCSE!!"). "!!ESCUAC .olleH" }}} == Erlang - 2 == === 느낀점 === 너무 날로 먹은거 같아서 reverse도 구현해 보았다 -_ -ㅎ === 소스 === * pr_3.erl {{{ -module(pr_3). -export([reverse/1]). reverse([]) -> []; reverse([First|Remain]) -> reverse(Remain) ++ [First]. }}} * shell {{{ 23> c(pr_3). {ok,pr_3} 24> pr_3:reverse("Hello. CAUCSE!!"). "!!ESCUAC .olleH" }}} == FeedBack == ---- [LittleAOI] [문자반대출력]