問題描述
輸入乙個只包含加減乖除和括號的合法表示式,求表示式的值。其中除表示整除。
輸入格式
輸入一行,包含乙個表示式。
輸出格式
輸出這個表示式的值。
樣例輸入
1-2+3*(4-5)
樣例輸出
-4資料規模和約定
表示式長度不超過100,表示式運算合法且運算過程都在int內進行。
#includeusing namespace std;
char str[110];
stacksint; //數字
stackschar; //運算子
bool iso(char c) //判讀是否為運算子
int getrank(char c) //獲取優先順序
void calc() //計算
int main()
}} else //為數字
} while(!schar.empty())
printf("%d\n",sint.top());
}
表示式(四則運算)計算的演算法
表示式 四則運算 計算的演算法 通常我們所看到的算術表示式,運算子總是在兩個運算元中間 除 如 a b c,這樣的表示式叫做 中綴表示式。這種表示式不同的運算子優先順序不同,而且通常含有括號,計算機很難理解這種表示式。在編譯系統中,要把人易於理解的表示式翻譯成能正確求值的機器指令。編譯系統中對中綴形...
Java實現四則運算表示式計算
四則運算表示式計算 author penli public class arithmetic public static double arithmetic string exp 解析計算四則運算表示式,例 2 3 4 2 22 2 3 param expression return public ...
C 計算四則運算表示式程式
最近在學資料結構,剛學完expression tree,解答了我多年的疑惑。以前就想寫乙個二十四點的小遊戲,計算機發4張牌,玩家在規定時間內想出4張牌任意四則運算後得到24的表示式。框架搭好,也可以發牌了,電腦怎麼答題可以遍歷所有可能性,得到24就中止。但玩家輸入表示式,怎麼計算出值是關鍵問題。現在...