首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

字符串类型的公式表达式的数值计算有关问题

2012-03-21 
字符串类型的公式表达式的数值计算问题最近在用VB6.0做一个统计工程材料的小程序,但遇到个技术问题还没想

字符串类型的公式表达式的数值计算问题
最近在用VB6.0做一个统计工程材料的小程序,但遇到个技术问题还没想到好的解决办法。具体如下:
若材料数据库里某一材料的用量计算公式为“f(a,b,...)”,其中,a,b..为计算参数,f为计算法则。对于不同的材料,参数和法则都是变量。
例如,某一材料的用量算法为“a*b+c/(d-e)”,程序从数据库读出该材料的参数和算法。如果是把参数和算法都存储在字符串变量里,那么,虽然可以用Val()或者Csng()等函数把参数转为数值,但如何把参数代入算法公式并求出数值解呢?
Val(“a*b+c/(d-e)”)这样显然是不行的。 由于算法也是变量,为了保证通用性,val(a)*val(b)+val(c)/(val(d)-val(e))也是不行的。

[解决办法]
这个不就是计算式么?
[解决办法]
google 下“vb 表达式计算”。对于没有系统学过计算机科学的用户,自己写有点难度。
[解决办法]
方法1:自己写个计算类。
方法2:调用Excel。
方法3:调用JS或vbs。
[解决办法]
工具箱中添加ms script control控件
在窗口中添加一个 script control控件对象

Private Sub Command1_Click()
Debug.Print ScriptControl1.Eval("3+5+8*(2*3)") 红色部分你自己的计算式
End Sub

热点排行