Cod sursa(job #2505923)

Utilizator cristia_razvanCristia Razvan cristia_razvan Data 7 decembrie 2019 11:48:39
Problema Evaluarea unei expresii Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.03 kb
#include <bits/stdc++.h>

using namespace std;
char s[60];
long long st[60];
int top;

int main()
{
    int i, semn = 1, ori = 0;
    long long x;
    cin >> s;
    for (i = 0; s[i]; )
        if(s[i] == '+')
        {
            semn = 1;
            i++;
        }
        else if(s[i] == '-')
        {
            semn = -1;
            i++;
        }
        else if('0' <= s[i] && s[i] <= '9')
        {
            x = 0;
            while('0' <= s[i] && s[i] <= '9')
            {
                x = x * 10 + s[i] - '0';
                i++;
            }
            x = x * semn;
            semn = 1;
            if(ori == 0)
            {
            st[++top] = x;
            }
            else
            {
                st[top] *= x;
                ori = 0;
            }
        }
        else
        {
            ///s[i] = '*'
            ori = 1;
            i++;


        }
    x = 0;
    for(i = 1; i <= top; i++)
        x += st[i];
    cout << x;
    return 0;
}