Pagini recente » Cod sursa (job #1819644) | Cod sursa (job #2935715) | Cod sursa (job #384623) | Cod sursa (job #1132235) | Cod sursa (job #301732)
Cod sursa(job #301732)
#include<stdio.h>
char ch[100010],*p=ch;
int add(void);
int multi(void);
int nr(void);
int add(){
int r=multi();
if(*p=='+'){p++;r+=add();return r;}
else
if(*p=='-'){p++;r-=add();return r;}
return r;
}
int multi(){
int r=nr();
if(*p=='*'){p++;r*=multi();return r;}
else
if(*p=='/'){p++;r/=multi();return r;}
return r;
}
int nr(){
int r=0;
if(*p=='(')
{p++;r=add();p++;}
else
while(*p>='0'&&*p<='9')
{r=(r*10)+(*p-'0');p++;}
return r;
}
int main(){
freopen("evaluare.in","r",stdin);
freopen("evaluare.out","w",stdout);
scanf("%s",ch);
printf("%d",add());
return 0;}