Pagini recente » Cod sursa (job #1340597) | Cod sursa (job #2198913) | Cod sursa (job #1452128) | Cod sursa (job #2679416) | Cod sursa (job #1814965)
#include <cstdio>
#include <cstring>
char s[100021];int x;int e();int f(){int n,R,S,o,T;o=T=R=S=1;while(T){S=1;n=0;if(s[x]=='-')S=-S,++x;else if(s[x]=='+')++x;if(s[x]=='(')x++,n=e();else for(;'0'<=s[x]&&s[x]<='9';n=n*10+s[x++]-48);if(o)R*=S*n;else if(n)R/=n;else R=0;if(s[x]=='/')o=0,x++;else if(s[x]=='*')o=1,x++;else T=0;}return R;}int e(){int S=0;while(s[x]!=')')S+=f();++x;return S;}int main(){freopen("evaluare.in","r",stdin);freopen("evaluare.out","w",stdout);scanf("%s",s);s[strlen(s)]=')';printf("%d", e() );}