C# Sqrt方法不适用于';t返回号码
我有一个方法,可以为代码中的其他内容计算两个偏移量。我将这些偏移量写入输出,结果是:C# Sqrt方法不适用于';t返回号码,c#,math.sqrt,C#,Math.sqrt,我有一个方法,可以为代码中的其他内容计算两个偏移量。我将这些偏移量写入输出,结果是:不是数字。当我尝试将这些值分配给其他变量时,这些变量的值为0 这是我的代码: int w = 1200; int h = 1824; double offsetX = System.Math.Sqrt (-((9 * w * w) / 16)); double offsetY = System.Math.Sqrt (((9 * h * h) / 16) + ((9 * w * w) / 16) - offsetX
不是数字。当我尝试将这些值分配给其他变量时,这些变量的值为0
这是我的代码:
int w = 1200;
int h = 1824;
double offsetX = System.Math.Sqrt (-((9 * w * w) / 16));
double offsetY = System.Math.Sqrt (((9 * h * h) / 16) + ((9 * w * w) / 16) - offsetX);
我不知道这是一个数学问题还是一个编程问题。为什么它返回这个奇怪的值?-((9*w*w)/16)
表达式返回一个负值,即-810000
这就是这个方法返回的原因
来自
来自
任何正数或负数的平方都是正数,并且
0的平方等于0因此,任何负数都不能有实平方
根。但是,可以使用一组更具包容性的
数字,称为复数,它包含的解决方案为
负数的平方根。
他们不能。负数的平方根不是实数。这是虚构的。@DanielA.White天哪。我忘了:谢谢
d parameter | Return value
Negative | NaN