Добавил:
Upload
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:16_II / формула
.cpp#include<iostream.h>
#include<fstream.h>
struct sp{char data;sp *next;};
ifstream in ("in.txt");
void VSTEK (sp*&nach1,char x)
{
sp *r;
r=new sp;
r->data=x;
r->next=nach1;
nach1=r;
}
void IZSTEK(sp *&nach1,char &x)
{
sp* r;
x=nach1->data;
r=nach1->next;
delete nach1;
nach1=r;
}
void main()
{
sp *nach;
char c,op,x,y;
in.seekg(0);
nach=NULL;
while(in.peek()!=EOF)
{
in>>c;
if(((c<='9')&&(c>='0'))||(c=='M')||(c=='m'))
VSTEK(nach,c);
else if(c==')')
{
IZSTEK(nach,y);
IZSTEK(nach,x);
IZSTEK(nach,op);
switch(op)
{
case 'M':
if(x>y)
c=x;
else c=y;
break;
case'm':
if(x<=y)
c=x;
else c=y;
break;
default:;
}
VSTEK(nach,c);
}
}
in.close();
cout<<"formula=";
IZSTEK(nach,c);
cout<<c;
cout<<endl;
}
Соседние файлы в папке 16_II