Cod sursa(job #2324450)

Utilizator BaraianTudorBaraian Tudor Stefan BaraianTudor Data 20 ianuarie 2019 19:31:10
Problema Evaluarea unei expresii Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.95 kb
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
ifstream in("evaluare.in");
ofstream out("evaluare.out");
char c[100005];
int nr(int & st)
{
    long long a=c[st]-'0';
    while('0'<=c[st+1] && c[st+1]<='9' && st+1<=strlen(c))
    {
        ++st;
        a=a*10+c[st]-'0';
    }
    return a;
}
int prod(int & st,int a)
{
    st++;
    while(c[st]=='*'||c[st]=='/' && st+1<=strlen(c))
    {
        if(c[st]=='/')
        {
            st++;
            a/=nr(st);
        }
        if(c[st]=='*')
        {
            st++;
            a*=nr(st);
        }
        st++;
    }
    st--;
    return a;
}
int evaluare(int st)
{
    while(c[st+1]!='(' && c[st+1]!=')')
    {
        ++st;
        int a=0;
        int s=0;
        a=nr(st);
        a=prod(st,a);
    }


}

int main()
{
    in.getline(c+1,100005);
    c[0]='(';
    c[strlen(c)]=')';
    evaluare(c[0]);
    return 0;
}