Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- using namespace std;
- enum status
- {
- Start = 0,
- PossibleComment = 1,
- Comment1 = 2,
- Comment2 = 3,
- PossibleEnd = 4
- };
- int main ()
- {
- ifstream fin; ofstream fout;
- fin.open ("input.txt"); fout.open ("output.txt");
- status st = Start;
- if (fin)
- {
- char symbol;
- while (fin.get(symbol))
- {
- cout<<symbol;
- switch (st)
- {
- case Start:
- if (symbol == '/')
- {
- st = PossibleComment;
- break;
- }
- else
- {
- fout << symbol;
- break;
- }
- case PossibleComment:
- if (symbol == '/')
- {
- st = Comment1;
- break;
- }
- else
- {
- if (symbol == '*')
- {
- st = Comment2;
- break;
- }
- else
- {
- fout << symbol;
- break;
- }
- }
- case Comment1:
- if (symbol == '\n')
- {
- st = Start;
- fout<<symbol;
- break;
- }
- else
- {
- break;
- }
- case Comment2:
- if (symbol == '*')
- {
- st = PossibleEnd;
- break;
- }
- else
- {
- break;
- }
- case PossibleEnd:
- if (symbol == '/')
- {
- st = Start;
- break;
- }
- else if(symbol == '*')
- {
- break;
- }
- else
- {
- st = Comment2;
- break;
- }
- }
- }
- }
- fin.close(); fout.close();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement