最近把計算器完善了一下,添加了變量的支持,添加了更多的函數,把邏輯短路操作也實現了,並修正了一些小錯誤。想起來以前在一本書 裡看到過一個示例,輸入函數表達式,就可以繪制函數的波形。最開始學VB的時候,就喜歡用函數來畫圖。再加上對電子技術有點興趣,很多 波形都可以用函數來表示,很自然就想到用程序來模擬示波器顯示波形。但是因為函數都需要在代碼裡面寫死,如果需要新增函數或者進行修 改,需要修改程序代碼再編譯運行。既然現在可以做到對表達式進行計算,也可以支持變量,那麼讓變量的值變化就可以計算得到不同的值, 再把這些值組合成坐標點,連接起來就成了波形。於是乎,咱也試試做一個顯示函數波形的小程序玩玩,效果如下:
先說說新添加的變量支持功能。這裡的變量並不需要聲明,只要不是保留的關鍵字,程序就把它作為變量。在以前的版本中遇到不認識的字 符串會報錯,現在是在分析關鍵字的時候做了特殊處理,遇到非關鍵字字符串則添加到一個靜態的變量字典中。變量字典的Key是該變量的字符 串表示,Value是一個TokenValue對象。在添加到字典之後,如果再遇到相同的字符串,則返回變量字典中對應的TokenValue對象。下面給個例 子: