Pagini recente » Cod sursa (job #2939850) | Cod sursa (job #1283581) | Cod sursa (job #2943296) | Cod sursa (job #1239988) | Cod sursa (job #413164)
Cod sursa(job #413164)
#include<stdio.h>
char s[100010],*p=s+1;
int sub2();
int sub3();
int sub1()
{
int r=sub2();
while(*p=='+'||*p=='-')
{
if(*p=='+')
{
++p;
r+=sub2();
}
if(*p=='-')
{
++p;
r-=sub2();
}
}
return r;
}
int sub2()
{
int r=sub3();
while(*p=='*'||*p=='/')
{
if(*p=='*')
{
++p;
r*=sub3();
}
if(*p=='/')
{
++p;
r/=sub3();
}
}
return r;
}
int sub3()
{
int r=0;
if(*p=='(')
{
++p;
r=sub1();
++p;
}
else while('0'<=*p&&*p<='9')
{
r=r*10+*p-'0';
++p;
}
return r;
}
int main()
{
freopen("evaluare.in","r",stdin);
freopen("evaluare.out","w",stdout);
scanf("%s",s+1);
printf("%d",sub1());
return 0;
}