表示式計算 四則運算(有括號)的計算

2021-07-28 21:27:12 字數 582 閱讀 5265

問題描述

輸入乙個只包含加減乖除和括號的合法表示式,求表示式的值。其中除表示整除。

輸入格式

輸入一行,包含乙個表示式。

輸出格式

輸出這個表示式的值。

樣例輸入

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就中止。但玩家輸入表示式,怎麼計算出值是關鍵問題。現在...