全紫求助

P1449 后缀表达式

rpmcppAFOed @ 2021-12-05 16:55:48

#include<bits/stdc++.h>
using namespace std;
stack<int> stk;
char ch;
int main(){
    while(cin>>ch){
        if(ch='.')
            continue;
        if(ch>='0'&&ch<='9'){
            int tmp=ch-'0';
            stk.push(tmp);
        }
        if(ch=='+'){
            int p1=stk.top();
            stk.pop();
            int p2=stk.top();
            stk.pop();
            stk.push(p1+p2);
        }
        if(ch=='-'){
            int p1=stk.top();
            stk.pop();
            int p2=stk.top();
            stk.pop();
            stk.push(p2-p1);
        }
        if(ch=='*'){
            int p1=stk.top();
            stk.pop();
            int p2=stk.top();
            stk.pop();
            stk.push(p1*p2);
        }
        if(ch=='/'){
            int p1=stk.top();
            stk.pop();
            int p2=stk.top();
            stk.pop();
            stk.push(p2/p1);
        }
    }
    cout<<stk.top();
    return 0;
}

by rpmcppAFOed @ 2021-12-05 17:03:38

已A


|