Pagini recente » Cod sursa (job #1084806) | Cod sursa (job #2729626) | Cod sursa (job #1089287) | Cod sursa (job #1923404) | Cod sursa (job #3162621)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("evaluare.in");
ofstream out("evaluare.out");
const int MAX = 100000;
char c[MAX];
int poz;
int factor()
{
int number=0;
while(c[poz]>='0' && c[poz]<='9')
{
number = number*10+c[poz]-'0';
poz++;
}
return number;
}
int inmultire()
{
int res=factor();
while(c[poz]=='*' || c[poz]=='/')
{
if(c[poz]=='*')
{
poz++;
res*=factor();
}
else
{
poz++;
res/=factor();
}
}
return res;
}
int adunare()
{
int res=inmultire();
while(c[poz]=='+' || c[poz]=='-')
if(c[poz]=='+')
{
poz++;
res+=inmultire();
}
else
{
poz++;
res-=inmultire();
}
return res;
}
int main()
{
in>>c;
poz=0;
out<<adunare();
return 0;
}