1 solutions
-
0
C++ :
#include <iostream> using namespace std; int main () { char a[210]; while(cin.getline(a,210)){ if(a[0]=='0'&&a[1]=='\0') break; double b[200]={0}; char c[101]; int j=0; for(int i=0;a[i];i++){ if(a[i]>='0'&&a[i]<='9') b[j]=b[j]*10+a[i]-48; else {if(a[i]==' ') continue; c[j]=a[i]; j++; } } for(int k=0;k<j;k++){ if(c[k]=='*'){ b[k+1]=b[k]*b[k+1]; b[k]=0; c[k]='0'; } else if(c[k]=='/'){ b[k+1]=b[k]/b[k+1]; b[k]=0; c[k]='0'; } } char l='+'; for(int s=0;s<j;s++){ if(c[s]=='+'){ b[0]+=b[s+1]; l=c[s]; } else if(c[s]=='-'){ b[0]-=b[s+1]; l=c[s]; } else if(c[s]=='0'){ if(l=='+') b[0]+=b[s+1]; else if(l=='-') b[0]-=b[s+1]; } } printf("%.2lf\n",b[0]); } return 0; }
- 1
Information
- ID
- 20216
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By