Напишите программу для вычисления и вывода на экран корней квадратного уравнения ax² + bx + c = 0. значения коэффициентов уравнения вводите в диалоговом режиме.

GeneralEsdese GeneralEsdese    1   30.09.2019 23:00    39

Ответы
sapeglub sapeglub  09.10.2020 06:31

Ладно, значит будет с комплексными.

PascalABC.NET 3.4.2, сборка 1843 от 24.10.2018Внимание! Если программа не работает, обновите версию!

begin

 var (a, b, c) := ReadReal3('Введите через пробел a, b, c:');

 var d := b * b - 4 * a * c;

 if d = 0 then Println('х =', -b / a)

 else

 if d > 0 then

 begin

   d := Sqrt(d);

   Println('x1 =', (-b - d) / 2 / a);

   Println('x2 =', (-b + d) / 2 / a)

 end

   else

 begin

   d := Sqrt(-d);

   Println('x1 =', -b / 2 / a, '-', d / 2 / a, 'I');

   Println('x2 =', -b / 2 / a, '+', d / 2 / a, 'I')

 end

end.

ПримерыВведите через пробел a, b, c: 1 2 1х = -2 Введите через пробел a, b, c: 3 4.5 -8.15x1 = -2.56084694733339 x2 = 1.06084694733339 Введите через пробел a, b, c: 3 4 5x1 = -0.666666666666667 - 1.10554159678513 I x2 = -0.666666666666667 + 1.10554159678513 I
ПОКАЗАТЬ ОТВЕТЫ
Маша07122005 Маша07122005  09.10.2020 06:31
Код

#include <iostream>

#include <math.h> // for sqrt() function

using namespace std;

int main()

{

   setlocale(LC_ALL, "Russian");

   int a, b, c;

   double D;

   cout << "Введите a, b, c (ax^2 + bx + c = 0) : ";

   cin >> a >> b >> c;

   D = b*b - 4*a*c;

   if(D < 0){

       cout << "\nДискриминант меньше нуля, действительных корней нет!";

       return 0;

   }

   else if(D == 0){

       cout << "\nДискриминант равен нулю, x0 = " << -(b/2*a);

       return 0;

   }

   else if(D > 0){

       cout << "Дискриминант больше нуля, x1 = " <<  

       (-b + sqrt(D))/(2*a) << ", x2 = " <<

       (-b - sqrt(D))/(2*a);

   }

   return 0;

}

Проверка

Введите a, b, c (ax^2 + bx + c = 0) : 2 4 7

Дискриминант меньше нуля, действительных корней нет!

Введите a, b, c (ax^2 + bx + c = 0) : 1 6 9

Дискриминант равен нулю, x0 = -3

Введите a, b, c (ax^2 + bx + c = 0) : 2 4 -7  

Дискриминант больше нуля, x1 = 1.12132, x2 = -3.12132

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика