Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.06.2011, 02:36   #1
monkey_tree
 
Регистрация: 21.06.2011
Сообщений: 4
По умолчанию С++ КАК РАБОТАет??

С++ одъясните плз как работате прога

написать прогу удаляющую 2 вида коммернтариев из текста программы на паскале. ПРога должна читать из вх файла по одному символу и управляться с помощью таблиц.

вход
var{ comment }
a: integer;
begin (*another comment*)
writeln('{not a comment}');
end.

выход
var
a:integer;
begin
writeln('{not a comment}');
end.



#include "stdafx.h"
using namespace std;
int State[7][7]=
{
0,1,0,0,0,0,0,
0,4,2,3,4,4,4,
2,2,4,2,2,2,2,
0,4,2,3,4,5,4,
0,4,2,3,4,4,4,
5,5,5,5,5,6,5,
4,4,4,3,4,4,6,
};
int _tmain(int argc, _TCHAR* argv[])
{
system("cls");
ifstream myin(in_Fname);
ofstream myout(out_Fname,ios::app);
if (!myin.is_open())
{
exit(1);
};
if (!myout.is_open())
{
myin.close();
exit(1);
};
char symbol;
int tState=4;
int newstate=4;
char tsymbol=NULL;
while (!myin.eof())
{
myin.get(symbol);
if (myin.eof())
break;
newstate=State[tState][Analys(symbol)];
switch(newstate)
{
case 0://{
tState=newstate;
break;
case 1://}
tState=newstate;
break;
case 2://'
myout<<tsymbol;
tsymbol=NULL;
myout<<symbol;
tState=newstate;
break;
case 3://(
tState=newstate;
tsymbol=symbol;
break;
case 4://symbol
tState=newstate;
myout<<tsymbol;
myout<<symbol;
tsymbol=NULL;
break;
case 5://*
tState=newstate;
break;
case 6://)
tState=newstate;
tsymbol=NULL;
break;
default:
break;
}
};
myin.close();
myout.close();
}

int Analys(char t)
{
switch(t)
{
case '{':
return 0;
break;
case '}':
return 1;
break;
case '\'':
return 2;
break;
case '(':
return 3;
break;
case '*':
return 5;
break;
case ')':
return 6;
break;
}
return 4;
}
monkey_tree вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как работает процессор? Иллидан Компьютерное железо 13 17.07.2011 14:04
как это работает? pufystyj Общие вопросы C/C++ 6 24.04.2011 16:50
как работает цикл while gagarin0 Помощь студентам 4 26.01.2011 20:45
Как работает TeamViewer? dr.Chas Софт 3 26.02.2010 23:59
Как работает?! KamBall Общие вопросы C/C++ 2 01.06.2009 19:23