Vbscript类型不匹配错误
所以,我在尝试学习vbscript时遇到了一个问题:类型不匹配。我在vbs方面没有经验,所以我不知道错误在哪里。我正在写一个程序,要求求直角三角形的边和角度,然后程序会给我所有的数据。 所以我需要一个代码通过三角函数得到角度(sin*α*=a/c,你知道“a”和“c”)。这是整个程序的一部分(其中包含反三角函数)。输入0.8!(a=4,b=3,c=5):Vbscript类型不匹配错误,vbscript,type-mismatch,Vbscript,Type Mismatch,所以,我在尝试学习vbscript时遇到了一个问题:类型不匹配。我在vbs方面没有经验,所以我不知道错误在哪里。我正在写一个程序,要求求直角三角形的边和角度,然后程序会给我所有的数据。 所以我需要一个代码通过三角函数得到角度(sin*α*=a/c,你知道“a”和“c”)。这是整个程序的一部分(其中包含反三角函数)。输入0.8!(a=4,b=3,c=5): 如果有不清楚的地方,请提醒我。英语不是我的母语,所以我不太懂数学的表达方式。最好的问候Matthew SzertelVBScript不会处理表
如果有不清楚的地方,请提醒我。英语不是我的母语,所以我不太懂数学的表达方式。最好的问候Matthew SzertelVBScript不会处理表达式
-e^e+1
,除非e
是整数。它不会给出负非整数的指数。但是如果负数的指数是它的绝对值(即正),也许你可以做Sqr(e^e+1)
?我测试了这个,它对我有效,尽管我没有验证数学的准确性
请参阅:。该条规定:
“仅当指数为整数值时,数字才能为负数。”
我并不反对VBScript本身,但它似乎不太适合数学工作
更新:重新阅读你的帖子我怀疑你在输入框中输入了带感叹号的“0.8!”。如果是这种情况,那么您确实会得到类型不匹配,因为带有感叹号的数字将被视为字符串,即文本,并且不能用于任何数学运算
u1 = "Type the quotient of a and c!"
f = "Math"
e =Inputbox(u1, f)
c = Sqr(-e^e+1)
a = Atn(e/c)
u = "α=" & a & vbCrLf
k = 0+64
msgbox u, k, f