簡單說下思路:從字串最右端開始掃瞄,遇到數字則入棧,遇到運算子則彈出兩個元素計算後再入棧,知道最後棧中最後乙個元素就是最後表示式的值。
字串的處理比較繁瑣。充分利用庫函式 。
#include #include #include #include #include #include #include #include #include using namespace std;
int main()} }
else
string dot1(dot.size(),' ');
for(int i=dot.size()-1,j=0;i>=0;i--,j++)dot1[j]=dot[i];
char pt[20];
strcpy(pt,dot1.c_str());
double re=atof(pt);
s.push(re);
i=j;
}} tmp=ex[0];
double a=s.top();
s.pop();
double b=s.top();
s.pop();
switch(tmp)
} return 0;
}
NYOJ 128 字首式計算
時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 先說明一下什麼是中綴式 如2 3 4 5這種我們最常見的式子就是中綴式。而把中綴式按運算順序加上括號就是 2 3 4 5 然後把運算子寫到括號前面就是 2 3 4 5 把括號去掉就是 2 3 4 5 最後這個式子就是該表示式的字...
NYOJ 128 字首式計算
描述 先說明一下什麼是中綴式 如2 3 4 5這種我們最常見的式子就是中綴式。而把中綴式按運算順序加上括號就是 2 3 4 5 然後把運算子寫到括號前面就是 2 3 4 5 把括號去掉就是 2 3 4 5 最後這個式子就是該表示式的字首表示。給你乙個字首表示式,請你計算出該字首式的值。比如 2 3 ...
nyoj128 字首式計算
先說明一下什麼是中綴式 如2 3 4 5這種我們最常見的式子就是中綴式。而把中綴式按運算順序加上括號就是 2 3 4 5 然後把運算子寫到括號前面就是 2 3 4 5 把括號去掉就是 2 3 4 5 最後這個式子就是該表示式的字首表示。給你乙個字首表示式,請你計算出該字首式的值。比如 2 3 4 5...