在文本框里输入“(154-45)×4+8^2”之类的运算怎样得到结果啊,太伤脑了,高人指点一下!

cly2004 2005-04-30 09:43:26
通过判断运算符吗?,优先级怎么做啊,太伤脑了
...全文
256 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
hwshws123 2005-05-02
  • 打赏
  • 举报
回复
关注
aloka 2005-05-02
  • 打赏
  • 举报
回复
sc
gillianhu 2005-05-01
  • 打赏
  • 举报
回复
学到一个新control!谢谢。
apple_001 2005-05-01
  • 打赏
  • 举报
回复
mark
therockdelt 2005-05-01
  • 打赏
  • 举报
回复
mark
现在还是人类 2005-05-01
  • 打赏
  • 举报
回复
楼上的,自己写解码程序识别表达式是不错,但是对于
复杂的表达式呢,就不那么容易写了,最主要的是稳定性。

to 搂主
=====================
laviewpbt(人一定要靠自己) 主要是给你了一个API函数
他用那个API函数来解释你的表达式,就这么简单。
API函数的使用方法他也有例子了。不过建议使用
Microsoft Script Control 1.0,可以解释整段VBScript语言。
非常好用,我就用它作了一个自己的ASP解释器。
xiuyuan 2005-05-01
  • 打赏
  • 举报
回复
我看过我们老师自己编的程序,使用的是递归的办法
cly2004 2005-04-30
  • 打赏
  • 举报
回复
laviewpbt(人一定要靠自己)

能不能注释一下,看的不是很懂啊
cly2004 2005-04-30
  • 打赏
  • 举报
回复
谢谢搞定
laviewpbt 2005-04-30
  • 打赏
  • 举报
回复

Option Explicit
Private Declare Function EbExecuteLine Lib "vba6.dll" (ByVal pStringToExec As Long, ByVal Unknownn1 As Long, ByVal Unknownn2 As Long, ByVal fCheckOnly As Long) As Long

Private Function ExecuteLine(sCode As String, Optional fCheckOnly As Boolean) As Boolean
ExecuteLine = EbExecuteLine(StrPtr(sCode), 0&, 0&, Abs(fCheckOnly)) = 0
End Function


Sub calc(ByVal x As String)
Dim result
ExecuteLine "dim x as double"
ExecuteLine "x= " & x
ExecuteLine "clipboard.settext x"
result = Clipboard.GetText
MsgBox x & "=" & result
Set result = Nothing
End Sub

Private Sub Command1_Click()
calc Text1
End Sub

Private Sub Form_Load()
Text1.Text = "(1+(2*((3-2)-4)))/2"
End Sub
cly2004 2005-04-30
  • 打赏
  • 举报
回复
ScriptControl是哪个引用啊
cly2004 2005-04-30
  • 打赏
  • 举报
回复
up
VBDN 2005-04-30
  • 打赏
  • 举报
回复
引用“Microsoft Script Control 1.0”
Private Sub Command1_Click()
Dim VBEval As New ScriptControl
Dim Result As String
On Error GoTo E
VBEval.Language = "vbscript"
Result = VBEval.Eval(Text1.Text)
MsgBox Text1.Text & "=" & Result
Exit Sub
E:
MsgBox "表达式错误,检查是否输入了非法字符!"
End Sub

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧