2014-01-30 71 views
-1

我的問題是如何去做一個解決C++中的方程的程序。例如,在C++中求解方程

用戶輸入:

-5*2+(5+1)+(5-2) 

程序的輸出:

-1 

任何代碼示例,鏈接,一般幫助是非常apreciated! :D謝謝!

+0

歡迎來到SO。請閱讀[幫助]文檔,瞭解如何發佈正確的問題。這不是其中的一個。 – OldProgrammer

+0

搜索StackOverflow或「C++計算器」的網頁 –

+0

問這個問題的正確方法是什麼?他基本上想要讓他開始,這似乎是合理的。它應該怎麼表達? –

回答

2

你的問題不是關於C++編程,我覺得。它更對準lexical analysis,更簡單地說,解析運算符和算法。如何這會工作非常簡短描述:

解析輸入令牌:

-5*2+(5+1)+(5-2) 

成爲

MINUS 
5 
MULTIPLY 
2 
PLUS 
LPAREN 
5 
PLUS 
1 
RPAREN 
PLUS 
LPAREN 
5 
MINUS 
2 
RPAREN 

這是符號化。然後你需要將它們變爲現實,這就是將這些無關的標記轉化爲有意義的陳述或子陳述。一旦你搞砸了,你可以解釋並返回結果。

Step A - -5 
Step B - A + 2 
Step C - 5 + 2 
Step D - B + C 
Step E - 5 - 2 
Step F - D + E 

希望這至少能讓你開始。