Написать функцию, которая обеспечивает решение квадратного уравнения - C#

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

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

public static double Kvadretnoe_Uravnenie( double q,  double w,  double e,  double r1, ref double r2)
        {
            double D = w * w - 4 * q * e;
            if (D > 0)
            {
                r1 = (-w + Math.Sqrt(D)) / (2 * q);
                 return r1;
                r2 = (-w - Math.Sqrt(D)) / (2 * q);
                 return r2;
            }
            if (D < 0)
            {
                Console.WriteLine("Действительных корней нет!");
            }
            if (D == 0)
            {
                r1 = -w / (2 * q);
                return r1;
            }
        }
 
        static void Main()
        {
            double a, b, c;
            Console.Write("Введите число для вычисления факториала = ");
 
             a = Convert.ToInt32(Console.ReadLine());
             b = Convert.ToInt32(Console.ReadLine());
             c = Convert.ToInt32(Console.ReadLine());
 
             double A = Kvadretnoe_Uravnenie(a, b, c);
            Console.WriteLine("Факториал \"{1}\" = {0}",Fact(n), n);
            Console.ReadKey();
Вот суть задачи: Нужно написать функцию, которая обеспечивает решение квадратного уравнения. Параметрами функции должны быть коэффициенты a b c (входные параметры) а выходные это решение этого уравнения x1 x2 (выходные параметры).Также нужно прописать, что есть ли у корня 2 различных корня и выводит ответы этих корней. Если один корень у этого уравнения то он выведет его, а если нет корней так и пишет, что их нет! Помогите пожалуйста.

Решение задачи: «Написать функцию, которая обеспечивает решение квадратного уравнения»

textual
Листинг программы
        public static double[] QuadraticEquationSolve(double a, double b, double c)
        {
            if (a==0 && b==0) //вырожденный случай
                return c == 0 ? null : new double[]{};
            if (a==0)         //линейное уравнение
                return new[]{-c / b};
 
            double D = b * b - 4 * a * c;
            if (D > 0)
                return new[]{(-b + Math.Sqrt(D)) / (2 * a), (-b - Math.Sqrt(D)) / (2 * a)}; //два корня в массиве
            if (D < 0)
                return new double[]{};
            return new[] {-b / (2 * a)};
        }

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


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

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

8   голосов , оценка 4 из 5
Похожие ответы