30/09/2018, 22:40
Tại sao output của dòng code này lại là NaN
Như tiêu đề , cho em hỏi dòng code C# này lại ra NaN được ?
static void Main(string[] args)
{
do
{
Console.WriteLine("Phuong trinh co dang ax^3 + bx^2 + cx + d");
Console.Write("a=");
int a = Convert.ToInt32(Console.ReadLine());
Console.Write("b=");
int b = Convert.ToInt32(Console.ReadLine());
Console.Write("c=");
int c = Convert.ToInt32(Console.ReadLine());
Console.Write("d=");
int d = Convert.ToInt32(Console.ReadLine());
double delta = ((b * b) - (3 * a * c));
double k = ((9 * a * b * c) - (2 * b * b * b) - (27 * a * a * d)) / (2 * Math.Sqrt(Math.Pow(Math.Abs(delta), 3)));
double arccosk = (-1) / (Math.Sqrt(1 - Math.Pow(k, 2)));
}
if (delta < 0)
{
double x16 = (((Math.Sqrt(Math.Abs(delta))) / (3 * a))) * ((Math.Pow(k + Math.Sqrt(Math.Pow(k, 2) + 1), 1.0 / 3.0) + (Math.Pow(k - Math.Sqrt(Math.Pow(k, 2) + 1), 1.0 / 3.0)))) - (b / 3 * a);
Console.Write("Phuong trinh co 1 nghiem duy nhat la x=");
Console.WriteLine(x16);
//output là NaN , không hiểu tại sao, có pro nào không giúp em với
}
} while (true);
Bài liên quan