Pagini recente » Cod sursa (job #7742) | Cod sursa (job #824253) | Cod sursa (job #6741) | Cod sursa (job #876356) | Cod sursa (job #1211716)
#include<fstream>
#include<algorithm>
using namespace std;
int i,check();
char s[100005];
int factor() {
int aux=0;
if(s[i]=='(') ++i,aux=check(),++i;
else while(s[i]>='0' && s[i]<='9')
aux*=10,aux+=s[i]-'0',++i;
return aux;
}
int termen() {
int aux=factor();
while(s[i]=='*' || s[i]=='/')
if(s[i]=='*') ++i,aux*=factor();
else ++i,aux/=factor();
return aux;
}
int check() {
int aux=termen();
while(s[i]=='+' || s[i]=='-')
if(s[i]=='+') ++i,aux+=termen();
else ++i,aux-=termen();
return aux;
}
int main()
{
ifstream cin("evaluare.in");
ofstream cout("evaluare.out");
cin>>s;
cout<<check()<<'\n';
return 0;
}