Pagini recente » Cod sursa (job #1399124) | Cod sursa (job #3144984) | Cod sursa (job #2829047) | Cod sursa (job #1401235) | Cod sursa (job #2501732)
#include <iostream>
#include <cstring>
using namespace std;
void citire(char s[10010])
{
cin.getline(s,10010);
}
char j[10010],i=0;
int anamere();
int inmultire();
int rezolv()
{
int p=inmultire();
while (j[i]=='+' || j[i]=='-')
{
if (j[i]=='+')
{
i++;
p+=inmultire();
}
else
{
i++;
p-=inmultire();
}
}
return p;
}
int inmultire()
{
int p=anamere();
while(j[i]=='*' || j[i]=='/')
{
if(j[i]=='*')
{
i++;
p*=anamere();
}
else
{
i++;
p/=anamere();
}
}
return p;
}
int anamere()
{
int p=0;
if (j[i]=='('){
i++;
p=rezolv();
i++;
}
else while (isdigit(j[i])) p=p*10+j[i++]-'0';
return p;
}
int main()
{
citire(j);
cout<<rezolv();
return 0;
}