[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] 求助,第一次接触VBS代码

各位大佬帮忙看一下为啥错了?输出是0
想输出想x(x(x(ax+b)+c)+c)+e
  1. Option Explicit
  2. Dim a1,a2,a3,a4,y
  3. a1 = "a" * "x" + "b"a2 = "x" * (a1) + "c"
  4. a3 = "x" * (a2) + "c"
  5. a4 = "x" * (a3) + "e"
  6. MsgBox a4[/quote]
复制代码
  1. dim x,a,b,c,e,a1,a2,a3,a4,y
  2. a1 = a*x+b
  3. a2 = x*a1+c
  4. a3 = x*a2+c
  5. a4 = x*a3+e
  6. y = CStr(a4)
  7. msgbox y
复制代码

你没有赋值啊,初始值都是0,结果当然也是0了
a1 = 1
a2 = 2
x = 3
这样子,把变量都赋值,才能计算结果
如果要手动输入,这样子写
a1 = 0 + InputBox("a1")

你这个另存为vbs而不是bat文件

QQ 20147578

TOP

  1. Option Explicit
  2. Dim a1,a2,a3,a4,y
  3. a1 = "a" * "x" + "b"a2 = "x" * (a1) + "c"
  4. a3 = "x" * (a2) + "c"
  5. a4 = "x" * (a3) + "e"
  6. MsgBox a4
复制代码
你这个属实没搞懂啊
bat里的变量是字符串替换 在执行 但是vbs不一样啊
*的意思是乘 需要两个数字类型的变量用
所以你应该
  1. Option Explicit
  2. Dim a1,a2,a3,a4,y
  3. a1 = a * x + b
  4. a2 = x * a1 + c
  5. a3 = x * a2 + c
  6. a4 = x * a3 + "e"
  7. MsgBox a4
复制代码
还有变量名不需要括起来
当然括了不会出错

TOP

且你的所有变量都没有初始化
在dim的过程中 变量会被初始化为Empty 你可以理解为0

TOP

回复 3# jyswjjgdwtdtj


    谢谢大佬

TOP

回复 3# jyswjjgdwtdtj


    大佬。报错了。
链接

TOP

回复 6# 3634043412


    https://t.wss.ink/f/bewbwk71joj 复制链接到浏览器打开

TOP

回复 6# 3634043412


    因为你的变量a没有定义 所以a的值为empty empty不是一个数字 所以不能参与乘法运算 所以报错

TOP

回复 7# 3634043412


    要上传图片 可以去找一个图床 比如imgtp.com
把图片链接 不是网址 粘贴到”[img][/img]“之间

TOP

  1. a = 11
  2. x = 22
  3. b = 33
  4. c = 44
  5. e = 55
  6. a1 = a * x + b
  7. a2 = x * a1 + c
  8. a3 = x * a2 + c
  9. a4 = x * a3 + e
  10. y = CStr(a4)
  11. msgbox y
复制代码

QQ 20147578

TOP

对了 你可以不必搞那么多
直接msgbox x*(x*(x*(a*x+b+c)+c)+e

TOP

返回列表