Pagini recente » Cod sursa (job #1214602) | Cod sursa (job #2133068) | Cod sursa (job #942492) | Cod sursa (job #2216496) | Cod sursa (job #1757546)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("evaluare.in");
ofstream fout ("evaluare.out");
typedef long long int var;
const int MAX = 100005;
char s[100005] , *p = s;
var Adunare();
var Imultire();
var Valoare();
var Adunare()
{
var x = Imultire();
while(*p == '+' || *p == '-'){
if(*p == '+')
p++, x += Imultire();
else
p++, x -= Imultire();
}
return x;
}
var Imultire()
{
var x = Valoare();
while(*p == '*' || *p == '/')
{
if(*p == '*')
p++, x *= Valoare();
else
p++, x /= Valoare();
}
return x;
}
var Valoare()
{
var x = 0;
if(*p == '('){
p++;
x = Adunare();
p++;
}
if(isdigit(*p)){
for(;isdigit(*p); p++)
x = x * 10 + (*p - '0');
}
return x;
}
int main()
{
fin >> s;
fout << Adunare();
return 0;
}