Определить метод, позволяющий распознавать наличие вещественных корней в квадратном уравнении - C#

Узнай цену своей работы

Формулировка задачи:

Даны три квадратных уравнения ax^2+bx+c,bx^2+ax+c,cx^2+ax+b сколько из них имеют вещественные корни. Определить метод, позволяющий распознавать наличие вещественных корней в квадратном уравнении.

Решение задачи: «Определить метод, позволяющий распознавать наличие вещественных корней в квадратном уравнении»

textual
Листинг программы
  1. public class Program
  2. {
  3.     const double EPSILON = 0.0001;
  4.  
  5.     private static void Main()
  6.     {
  7.         double a = 1;
  8.         double b = -4;
  9.         double c = 4;
  10.  
  11.         int count = GetCount(a, b, c);
  12.         count += GetCount(b, a, c);
  13.         count += GetCount(c, a, b);
  14.  
  15.         Console.WriteLine(count);
  16.     }
  17.  
  18.     private static int GetCount(double a, double b, double c)
  19.     {
  20.         double d = b * b - 4 * a * c;
  21.         if (d < 0)
  22.             return 0;
  23.  
  24.         double x1 = (-b - Math.Sqrt(d)) / a / 2;
  25.         double x2 = (-b + Math.Sqrt(d)) / a / 2;
  26.  
  27.         int count = IsFloat(x1) ? 1 : 0;
  28.         count += IsFloat(x2) ? 1 : 0;
  29.         return d < EPSILON ? count / 2 : count;
  30.     }
  31.  
  32.     private static bool IsFloat(double x)
  33.     {
  34.         return Math.Abs(x - Math.Truncate(x)) > EPSILON;
  35.     }
  36. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.8 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы