Составить программу для решения квадратного уравнения вида ax^2+bx+c=0 - Pascal ABC
Формулировка задачи:
Помогите написать программу на pascal.
Составить программу для решения квадратного уравнения вида ax^2+bx+c=0
В программе предосмотреть следующие случаи:
1. Если дискриминант D<0, то выдать сообщение <<мнимые корни>>.
2. Если D>0, то вычислить корни по формуле X1,2=-b+-√D/2a
Результат представить в виде <<Корни квадратного уравнения X1...,X2=...,>>.
3. Если D=0 то вычислить корни по формуле: X1,2=-b/2a
Результат представить в виде<<Корни квадратного уравнения X1=X2=...>>
Дискриминант квадратного уравнения определяется по формуле D=b^2-4ac
https://otvet.imgsmail.ru/download/4...f61f04_800.jpg
Решение задачи: «Составить программу для решения квадратного уравнения вида ax^2+bx+c=0»
textual
Листинг программы
var a, b, c, x1, x2, e, d : real;
BEGIN
WriteLn('Введите коэффициенты уравнения:');
ReadLn(a, b, c);
d:= b*b - 4*a*c;
e:= b/(2*a);
if d<0 then WriteLn('Мнимые корни')
else if d=0 then WriteLn('Корни квадратного уравнения: X1=X2=', -e)
else
begin
x1:= -e+sqrt(d)/(2*a);
x2:= -e-sqrt(d)/(2*a);
WriteLn('Корни квадратного уравнения: X1=', x1:6:2, ', X2=', x2:6:2);
end
END.
Объяснение кода листинга программы
- В программе объявлены переменные: a, b, c, x1, x2, e, d - все они имеют тип real (числа с плавающей точкой).
- Строка кода ReadLn(a, b, c); считывает значения коэффициентов уравнения с консоли.
- Вычисляется дискриминант d := bb - 4a*c;
- Вычисляется мнимая единица e := b/(2*a);
- Проверяется значение дискриминанта: если d < 0, то выводится сообщение
Мнимые корни. - Если d = 0, то выводится сообщение
Корни квадратного уравнения: X1=X2=и значения корней x1 и x2, которые вычисляются как -e + sqrt(d)/(2a) и -e - sqrt(d)/(2a) соответственно. - Если d > 0, то выполняется цикл:
a) вычисляется значение x1 как -e + sqrt(d)/(2a);
b) вычисляется значение x2 как -e - sqrt(d)/(2a);
c) выводится сообщение
Корни квадратного уравнения: X1=, значение x1,, X2=, значение x2. - Программа заканчивается командой END.