{{1}}
这输出t和y变量为nan。我不知道如何解决它。代码只是问题的一个例子,除了修复nans之外无需做任何其他事情。
答案 0 :(得分:2)
t= sqrt(pow(sin(x),2)) / sqrt(x - 4);
在C ++中,负数的平方根被定义为NAN,"不是数字"。由于变量x
在范围[-2, 2]
内进行迭代,因此您永远不会将其设为NAN,这意味着使用它的所有计算都将达到NAN。
如果您希望sqrt返回复数,则需要使用std::complex
及其各种数学函数。
答案 1 :(得分:1)
只要您继续在sqrt函数中使用负数,它就无法修复。 (提示:x - 4总是负数或零)