U E D R , A S I H C RSS

문자반대출력/조현태 (rev. 1.2)

문자반대출력/조현태

C++

느낀점


처음 테스트한 파일이 러브데스티니의 가사여서 한글이 있었다..OTL
어쨋든 한글도 되게 만들었다.^^
클래스도 써봤는데.. 본인이 보기에는 이쁘지만..^^ 남이 보기에는 영~~(아직 클래스를 못배웠다..ㅠ.ㅜ 2학기가 되어야 할텐데..ㅠ.ㅜ)
그래도 애교로 봐주시길..ㅎㅎ


소스

~cpp 
#include <iostream>
#include <fstream>

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"

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:29:30
Processing time 0.0196 sec