程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 數學表達式解析小工具 (開源)

數學表達式解析小工具 (開源)

編輯:C++入門知識

      功能很簡單,輸出一個數學表達式的字符串,輸出一個結果值.還算是挺好用的一個小工具吧,比起系統自帶的計算器來,它能夠很方便的顯示表達式.之前我曾發布過一個版本,新版本的界面與舊版本一模一樣,不同的是:我重寫了套用於數學表達式解析的庫.

      數學表達式解析算法使用的是分制遞歸,效率還算不錯.也許使用波蘭式的方法會更快,以後再說吧.

代碼和軟件下載地址:

http://files.cnblogs.com/WhyEngine/MathExpression.zip

早期版本地址:

http://www.cnblogs.com/WhyEngine/p/3513478.html

昨天我發了一篇博文"WHY數學表達式的3D可視化",這個小工具和它使用的是同一套表達式解析代碼.對表達式的使用格式都是一樣的.不同點在於這個版本新點,因為今天添加了對科學格式浮點數解析的功能.

自帶的函數運算符

(1)標准單目運算符

+,-

如:a = -b

(2)標准雙目運算符

+,-,*,/,%,^

如:c = a * b 

(3)函數單目運算符 形如sin(a)

positive,negative,abs,floor,ceil,sign,sqrt,exp,log,log2,log10,sin,cos,tan,asin,acos,atan,rand 

(4)函數雙目運算符 形如pow(a, b)       

add,sub,multiply,divide,max,min,mod,pow,atan2,rand2,        

(5)函數三目運算符 形如lerp(a, b, r)            

lerp,clamp,gray,add3,min3,max3,average3

(6)函數四目運算符 形如average4(a, b, c, d)

add4,min4,max4,average4

具體的函數功能我就不解釋了,看函數名也能猜個差不多,再不就看代碼吧.

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved