#37198: 隨便寫寫


1234twki (猴大王)

學校 : 臺北市立大安高級工業職業學校
編號 : 213151
來源 : [150.117.167.143]
最後登入時間 :
2024-04-28 16:03:56
f698. 後序運算式求值 -- 板橋高中教學題 | From: [101.3.127.112] | 發表日期 : 2023-08-24 15:47

就是

#include<iostream>
using namespace std;
int main(){
string c;
花了我一天DEBUG
while(getline(cin,c)){
int n[c.size()],i=0,k=0,a=0;
for(int j=0;j<c.size();j++){
if(c[j]=='+'){
n[i-2]=n[i-2]+n[i-1];
i=i-2;
}else if(c[j]=='-'){
a=3;
}else if(c[j]=='*'){
n[i-2]=n[i-2]*n[i-1];
i=i-2;
}else if(c[j]=='/'){
n[i-2]=n[i-2]/n[i-1];
i=i-2;
}else if(c[j]==' '){
if(a==3){
if(k!=1){
n[i-2]=n[i-2]-n[i-1];
i=i-2;
}else{
n[i]=0-n[i];
}
a=0;
}
i++;
k=0;
}else{
if(k==0){
n[i]=(c[j]-48);
k=1;
}else if(k==1){
n[i]=(n[i]*10)+(c[j]-48);
}
}
if(j==(c.size()-1)&&a==3){
n[i-2]=n[i-2]-n[i-1];
i=i-2;
}
}
cout<<n[0]<<endl;
}
}
隨便寫
 
ZeroJudge Forum