Pagini recente » Cod sursa (job #972295) | Cod sursa (job #852998) | Cod sursa (job #138323) | Cod sursa (job #2283465) | Cod sursa (job #2327030)
#include <fstream>
#include <cstring>
using namespace std;
ifstream fin("evaluare.in");
ofstream fout("evaluare.out");
long long i=0; char a[100003];
int termen();
int factor();
int expresie(){
int p=termen();
if(a[i]=='+'){i++; p+=expresie(); }else if(a[i]=='-'){i++; p=p-expresie();}
return p;
}
int termen(){
int p=factor();
if(a[i]=='*'){i++;p*=termen();} else if(a[i]=='/'){i++; p/=termen();}
return p;
}
int factor(){ int p=0;
if(a[i]=='('){i++; p=expresie(); i++;}
else if(isdigit(a[i]))
{while(isdigit(a[i])){p=p*10+(a[i]-'0'); i++;}}
return p;
}
int main()
{
fin.get(a,100001);
long long u=expresie();
fout<<u;
return 0;
}