Cod sursa(job #765567)

Utilizator cipriancxFMI - gr143 Timofte Ciprian cipriancx Data 8 iulie 2012 10:09:33
Problema Evaluarea unei expresii Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.86 kb
#include <iostream>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>

using namespace std;
char s[100002];
long long valori [100002],suma;
long int poz,ultim,d=1;
int ok=0;
long int i;


int main()
{
    freopen("evaluare.in","r",stdin);
    //freopen("evaluare.out","w",stdout);
  cin>>s;
  long int aux=strlen(s);
  s[aux]='=';


  for(i=0; i<aux; i++)
  {
      if(s[i]=='(')valori[d]=1000000001,d++;
      if(s[i]==')')valori[d]=1000000002,d++;
      if(s[i]=='+')valori[d]=1000000003,d++;
      if(s[i]=='-')valori[d]=1000000004,d++;
      if(s[i]=='*')valori[d]=1000000005,d++;
      if(s[i]=='/')valori[d]=1000000006,d++;

if(s[i]>='0' && s[i]<='9')
{
    int xx=(int)s[i];
suma=suma*10+xx-48;
if(s[i+1]<'0' || s[i+1]>'9'){ valori[d]=suma; d++; suma=0;     }
}
}

for(i=1; i<=d; i++)cout<<valori[i]<<"  ";


    return 0;
}