gpt4 book ai didi

c# - 为什么 Math.Pow(-78.0921, -64.6294) 返回 NaN?

转载 作者:行者123 更新时间:2023-11-30 18:48:22 26 4
gpt4 key购买 nike

我有两个值:X = -78.0921Y = -64.6294。现在,当我想计算 Math.Pow(X, Y) 时,它返回 NaN。我应该怎么办?我该如何解决这个问题?

我应该如何计算这个功率?有没有其他函数可以计算这个?...或者它可能没有数学定义?

最佳答案

你试图计算一个不真实的数字。

我的意思是,如果我们尝试了您能想到的最大数和最小数之间的每个数字,那么这些数字都不是 -78.0921 的 -64.6294 次方的解。

其实没有实数是-1的0.5次方的解,也就是-1的平方根,一般对于a^b如果a是负数b是非整数,结果不是真实的。

无法用实数表示这样一个有用的结果导致了复数的发明。我们说 sqrt(-1) = i,虚数单位,在复数系统中 - 所有复数都有一个实部和一个虚部,表示为 a + b*i

一般来说,负数的分数次幂不会产生真实的结果,因为它会包含 i 的某些分量 - 幂越接近 .5,i 越多,越接近 a .0,越真实,路径遵循实虚之间的圆圈,例如

-1^x = cos(pi*x)+i*sin(pi*x)

阅读更多关于复数的信息:http://en.wikipedia.org/wiki/Complex_number


如果您想在 C# 中处理复数,请尝试 http://msdn.microsoft.com/en-us/library/system.numerics.complex.aspx

但是,除非复数在您的问题域中具有某种意义(例如,它们在许多电气工程、物理和信号分析问题中有意义),否则您的数据或逻辑可能是错误的首先是这样的事情。

关于c# - 为什么 Math.Pow(-78.0921, -64.6294) 返回 NaN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16545036/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com