Поиск по разделу «Программирование»

Решение квадратного уравнения

Pas.0006. Напишите программу, которая решает квадратное уравнение \(
ax^2 + bx + c = 0 \), где \(a\), \(b\), \(c\) принимают целые значения. Программа должна вывести ответ, который получается в результате решения указанного уравнения.
Решение.
program QuadraticEquation;
var
    a : integer = 1;
    b : integer = -3;
    c : integer = 2;
    D: real;
begin
    D := b * b - 4 * a * c;
    write('Ответ: ');
    if (a = 0) and (b = 0) and (c = 0) then
        write('решением является любое действительное число.')
    else if (a = 0) and (b = 0) and (c <> 0) then
        write('решений нет.')
    else if (a = 0) and (b <> 0) then
        write('x = ', -c/b, '.')
    else if (a <> 0) and (D < 0) then
        write('решений нет (D < 0).')
    else if (a <> 0) and (D = 0) then
        write('x = ', -b/2/a, '.')
    else if (a <> 0) and (D > 0) then
        write('x1 = ', (-b+sqrt(D))/2/a,
            ', x2 = ', (-b-sqrt(D))/2/a, '.');
end.