Cod sursa(job #2671350)

Utilizator cristia_razvanCristia Razvan cristia_razvan Data 11 noiembrie 2020 22:34:35
Problema Evaluarea unei expresii Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.1 kb
#include <bits/stdc++.h>

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

ifstream fin("evaluare.in");
ofstream fout("evaluare.out");

int main()
{
    int i, semn = 1, ori = 0;
    long long x;
    fin >> 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];
    fout << x;
    return 0;
}