Pagini recente » Cod sursa (job #1843591) | Cod sursa (job #1588733) | Cod sursa (job #135005) | Cod sursa (job #2514040) | Cod sursa (job #846580)
Cod sursa(job #846580)
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
char sir [10000];
int i;
int sum();
int prod ();
int nr();
int main()
{ifstream fin ("evaluare.in");
ofstream gin ("evaluare.out");
fin.getline(sir,1000);
cout<<sum(); gin<<sum();
fin.close(); gin.close();
return 0;}
int sum()
{int v=prod();
while (sir[i]=='+' || sir[i]=='-')
{ if (sir[i]=='+') {i++; v+=prod();}
else {i++; v-=prod();} }
return v;}
int prod ()
{int v=nr();
while (sir[i]=='*' || sir[i]=='/')
{ if (sir [i]=='*') {i++; v*=nr();}
else {i++; v/=nr();} }
return v;}
int nr()
{int v=0;
if (sir[i]=='(') {i++; v=sum(); i++;}
else
{while (sir[i]>='0' && sir[i]<='9') {v=v*10+(sir[i]-'0'); i++;} }
return v;}