使用c#语言,if(NegativeValue <0)返回'false'而& # 39;真正的# 39;

本文关键字:false 返回 if 语言 NegativeValue 使用 | 更新日期: 2023-09-27 18:14:36

代码片段:计算二次方程的判别式(Disc):

        Disc = Math.Sqrt((secondCoefficient * secondCoefficient) - (4 * firstCoefficient * thirdCoefficient));
        if (Disc < 0)
        {
            MessageBox.Show("Its imaginary discriminant which can't be calculated!");
        }
        else
        {
            MessageBox.Show("The Discriminant of the required quadratic equation is : " + Convert.ToString(Disc), "Discriminant Calculator");
        }

输出:盘= -Ve(负值)显示文本:所需要的二次方程的判别式为:NaN你能给我详细解释一下吗?我试图理解,但没能找到正确的理由。

问题:如果磁盘值是负的,那么' If '语句返回为'false',而它应该返回为'true'。

使用c#语言,if(NegativeValue <0)返回'false'而& # 39;真正的# 39;

Math.Sqrt的结果将永远不会为负:结果将>= 0,NaN或+Inf。

求值后Disc 实际