Pagini recente » Cod sursa (job #2719858) | Cod sursa (job #938602) | Cod sursa (job #1870465) | Cod sursa (job #2713234) | Cod sursa (job #1898606)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("evaluare.in");
ofstream o("evaluare.out");
typedef long l;
char s[100005];
int p;
l termen();
l factor();
l eval()
{
l r = termen();
while ( s[p]=='+' || s[p]=='-' )
{
/*if(s[p]=='+')
{
r+=termen();
p++;
}*/
else if(s[p]=='-')
{
r-=termen();
p++;
}
}
return r;
}
l factor()
{
l r=termen();
while(s[p]=='*' || s[p]=='/')
{
if(s[p]=='*')
{
r*=termen();
p++;
}
if(s[p]=='/')
{
r/=termen();
p++;
}
}
return r;
}
l factor() {
l r=0;
if(s[p]=='(')
{
p++;
r=eval();
p++;
}
else {
while ( s[p]>='0' && s[p]<='9' )
{
r = r*10 + s[p] - '0';
p++;
}
}
return r;
}
int main()
{
f>>s;
cout<<
return 0;
}