Pagini recente » Rezultatele filtrării | Rezultatele filtrării | Rezultatele filtrării | Cod sursa (job #2143265) | Cod sursa (job #754043)
Cod sursa(job #754043)
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
char *s;
int e(char * &s,int l=0,int v=0){if(l==2){if(*s=='('){++s;int r=e(s);++s;return r;}else if(*s>='0'&&*s<='9'){int r=v*10+(*s)-'0';return e(++s,2,r);}else return v;}else if(l==1){int r=e(s,2);while(1){if(*s=='*')r*=e(++s,2);else if(*s=='/')r/=e(++s,2);else return r;}}else{int v=e(s,1);while(1){if(*s=='+')v+=e(++s,1);else if(*s=='-')v-=e(++s,1);else return v;}}}
int main() {
s = new char[150];
scanf("%s", s);
s[strlen(s)]=0;
cout << e(s);
}