1. 程式人生 > >[原始碼和文件分享]基於C++的表示式計算求值

[原始碼和文件分享]基於C++的表示式計算求值

一、使用說明

1.1 專案簡介

表示式求值是程式設計語言編譯中的一個最基本的問題,就是將一個表示式轉化為逆波蘭表示式並求值。具體要求是以字元序列的形式從終端輸入語法正確的、不含變數的整數表示式,並利用給定的優先關係實現對算術四則混合表示式的求值,並演示在求值過程中運算子棧,運算元棧,輸入字元和主要操作變化過程。

要把一個表示式翻譯成正確求值的一個機器指令序列,或者直接對錶達式求值,首先要能正確解釋表示式。任何一個表示式都是由操作符,運算子和界限符組成,我們稱它們為單詞。一般來說,運算元既可以是常數,又可以是被說明為變數或常量的識別符號;運算子可以分成算術運算子,關係運算符和邏輯運算子3類;基本界限符有左右括號和表示式結束符等。為了敘述的簡潔,我們僅僅討論簡單算術表示式的求值問題,這種表示式只包括加,減,乘,除4種運算子。

人們在書寫表示式時通常採用的是“中綴”表達形式,也就是將運算子放在兩個運算元中間,用這種“中綴”形式表示的表示式稱為中綴表示式。但是,這種表示式表示形式對計算機處理來說是不大合適的。對於表示式的表示還有另一種形式,稱之為“字尾表示式”,也就是將運算子緊跟在兩個運算元的後面。這種表示式比較合適計算機的處理方式,因此要用計算機來處理,計算表示式的問題,首先要將中綴表示式轉化成字尾表示式,又稱為逆波蘭表示式。

1.2 專案功能要求

為了實現表示式求值,本專案要求首先讀入表示式(包括括號)並建立對應二叉樹,其次對二叉樹進行前序遍歷,中序遍歷,後序遍歷,輸出對應的波蘭表示式,中綴表示式和逆波蘭表示式。

1.3 操作手冊

執行程式後,進入歡迎介面,首先要輸入表示式。

第一步,輸入中綴表示式:

在輸入相應表示式後,會自動顯示中綴、字首、字尾表示式。


參考文件和完整的文件和原始碼下載地址:

https://www.write-bug.com/article/1400.html