題目:
問題描述
輸入乙個只包含加減乖除和括號的合法表示式,求表示式的值。其中除表示整除。
輸入格式
輸入一行,包含乙個表示式。
輸出格式
輸出這個表示式的值。
樣例輸入
1-2+3*(4-5)
樣例輸出
-4資料規模和約定
表示式長度不超過100,表示式運算合法且運算過程都在int內進行。
上**:
1 #include2 #include3 #include4using
namespace
std;
5int mat[5][6] = ;
12string
str;
13 stacknu;
14 stackop;
15int
len;
16void
get(bool &flag, int &retn, int &i)
25 i--;
26 flag = false
;27 retn =x;28}
29else38}
39int
main()
50else
54else
69if (retnum != 5
) op.push(retnum);70}
71}72 idx++;73}
74while (!op.empty())
86 cout << nu.top() <87 }
藍橋杯 演算法訓練 表示式計算
之前在學習棧的時候老師講過這個問題 思路就是 1.將表示式 中綴式 轉化成字尾式 2.進行字尾式的計算。思路看起來很簡單,但是實際在敲 的時候還是要注意很多問題。下面分享一下個人做法,可以改進之處還希望大家可以指出來,共同進步!一 將中綴式轉化為字尾式 個人採用的是邊輸入邊進行處理 首先設定兩個棧,...
Stack c 堆疊計算表示式
calculator.cs 堆疊計算運算表示式 vs2005 complied ok using system using system.collections using system.text.regularexpressions 正規表示式庫 namespace stacktest isnum...
藍橋杯 字尾表示式
問題描述 給定 n 個加號 m 個減號以及 n m 1 個整數 a1,a2,an m 1,小明想知道在所有由這 n 個加號 m 個減號以及 n m 1 個整數湊出的合法的 字尾表示式中,結果最大的是哪乙個?請你輸出這個最大的結果。例如使用1 2 3 則 2 3 1 這個字尾表示式結果是 4,是最大的...