Pagini recente » Profil Petru24 | Cod sursa (job #874893) | Cod sursa (job #704828) | Cod sursa (job #552431) | Cod sursa (job #1291723)
#include <fstream>
#include <cstring>
#include <algorithm>
#define N 100010
using namespace std;
ifstream f("evaluare.in");
ofstream g("evaluare.out");
char E[N],*p;
int suma(),produs(),paranteza(),numar();
int main()
{
p=E;
f>>p;
g<<suma();
return 0;
}
int suma()
{
int Suma=produs();
while(*p=='-'||*p=='+')
{
if(*p=='-'){p++;Suma-=produs();}
else {p++;Suma+=produs();}
}
return Suma;
}
int produs()
{
int Produs=paranteza();
while(*p=='*'||*p=='/')
{
if(*p=='*'){p++;Produs*=paranteza();}
else {p++;Produs/=paranteza();}
}
return Produs;
}
int paranteza()
{
if(*p>='0'&&*p<='9')
return numar();
p++;
int Paranteza=suma();
p++;
return Paranteza;
}
int numar()
{
int Numar=0;
while(*p>='0'&&*p<='9')
{
Numar=Numar*10+*p-'0';
p++;
}
return Numar;
}