请帮帮忙吧,vb的幂函数问题
向大家请教个问题:
vb中 求负数的幂为什么会出错呢
如x=(-27)^(1/3),结果应该是-3,可为什么说是无效值呢,如果是+27就可以计算
[解决办法]
语法做了限定,我想只能变通一下吧?
变量用abs取绝对值,幂计算后乘-1,不会影响结果吧?
[解决办法]
Dim num As Double, exp As Double, result As Double
num = -27
exp = -3
If num < 0 And exp <> CLng(exp) Then
result = Sgn(num) * (Abs(num) ^ exp)
ElseIf num > 0 Then
result = Abs(num) ^ exp
ElseIf exp = CLng(exp) Then
result = (Abs(num) ^ exp) * (Sgn(num) ^ (exp Mod 2))
End If
Print result