Pagini recente » Cod sursa (job #2007086) | Cod sursa (job #1934428) | Cod sursa (job #2060875) | Cod sursa (job #2095159)
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
ifstream f ("evaluare.in");
ofstream g("evaluare.out");
char s[100001];
int i=0,lg;
int e();
int E();
int termen()
{
int x=0;
if(s[i]=='(')
{
i++;
x=E();
i++;
}
while(s[i]>='0'&&s[i]<='9')
x=x*10+s[i]-'0',i++;
return x;
}
int e()
{
int x=termen();
while(s[i]=='*'||s[i]=='/')
if(s[i++]=='*')
x*=termen();
else
x/=termen();
return x;
}
int E()
{
int x=e();
while(s[i]=='+'||s[i]=='-')
if(s[i++]=='+')
x+=e();
else
x-=e();
return x;
}
int main()
{
f>>s;
g<<E();
}