[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程批处理在线视频分享
返回列表 发帖

[原创] 极简!一行VBS代码构造强力计算器!

本帖最后由 老刘1号 于 2017-3-23 12:27 编辑

老刘原创,如有雷同,纯属巧合
  1. EXECUTE "MSGBOX ""结果:"" & "&INPUTBOX("输入算式:")
复制代码
可以计算:
1+1
5-10
2^10
1024^0.1
sin(tan(sin(2333)))

算法是微软写的,嘿嘿
秒杀系统自带计算器
3

评分人数

Change the world by program!
https://code.csdn.net/qq_23693343

厉害。谢谢分享!

TOP

  1. a=inputbox("输入:")
  2. execute "a="&a
  3. msgbox a
复制代码
更直观点

TOP

回复 3# Nsqs


    嗯,多费一个变量,不过可读性高了
Change the world by program!
https://code.csdn.net/qq_23693343

TOP

本帖最后由 老刘1号 于 2017-3-24 23:04 编辑

再附一个批处理调用版:
放到批处理文件末尾即可。
  1. GOTO :EOF
  2. :CALC
  3. for /f %%a in ('mshta VBScript:Execute("CreateObject(""Scripting.Filesystemobject"").GetStandardStream(1).Write(%~1)"^)(close^)') do Echo.%%a
复制代码
用法:
  1. Call :Calc 1+1-1+666-999 %计算前面一堆的结果%
  2. Call :Calc 2^^10 %计算2的10次方%
  3. Call :Calc 1024^^0.1 %计算1024的0.1次方%
  4. Call :Calc 1.665544332211111111111111111123-0.55443322110000000000000012 %计算浮点数加减%
  5. Call :Calc (9.9*9.9*9.9*9.9*9.9*9.9*9.9*9.9*9.9*9.9*9.9*9.9*9.9*9.9*9.9)^^(1/15) %计算浮点数相乘除,幂运算%
复制代码
返回可以用FOR收集
1

评分人数

    • taofan712: 老刘出品,必属精品!技术 + 1
Change the world by program!
https://code.csdn.net/qq_23693343

TOP

回复 1# 老刘1号


    顶老刘 赞老刘
判定一个人是否为伸手党的标准是取决于他的态度和诚意。

TOP

很久以前,用的 eval,结合 cscript 放在终端环境里。
  1. set inp=wscript.stdin
  2. set put=wscript.stdout
  3. put.writeline "input exit to exit"
  4. while true
  5. put.write "Test:"
  6. yousay = inp.readline
  7. if yousay="exit" then
  8. wscript.quit
  9. end if
  10. x=eval(yousay)
  11. put.writeline "x=" & x
  12. wend
复制代码
eval.bat
cscript //nologo "%~dp0eval.vbs"

计算公式后用 x 指代上一次的结果。

后来发现 python 交互挺好,没怎么用了。
1

评分人数

综合型编程论坛
Writing Code That Nobody Else Can Read.

TOP

返回列表