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

Уравнение вида a⋅x2 + b⋅x + c = 0 - квадратное уравнение.

a, b, c - действительные числа, a ≠ 0.

Для того чтобы вычислить корни квадратного уравнения, нужно сначала найти дискриминант.

D = b2 - 4⋅a⋅c;

  • если D < 0, то квадратное уравнение не имеет корней;
  • если D = 0, то уравнение имеет один действительный корень(иногда говорят, что корней два, но они одинаковые):
    • x1 = x2 = -b / (2⋅a);
  • если D > 0, то уравнение имеет два действительных корня:
    • x1 = (-b + √D) / (2⋅a);
    • x2 = (-b + √D) / (2⋅a).

Программа для решения квадратного уравнения на языке программирования Паскаль

{$CODEPAGE UTF8}
program QuadraticEquation;
var
  a, b, c, x1, x2, discriminant : real;
begin
  {ввыод данных}
  write('a = ');
  readln(a);
  write('b = ');
  readln(b);
  write('c = ');
  readln(c);
  
  {дискриминант}
  discriminant := sqr(b) - 4 * a * c;  

  if discriminant < 0 then
    writeln('Квадратное уравнение не имеет корней')
  else
    begin
      if discriminant = 0 then
        begin
          {квадратное уравнение имеет два одинаковых корня}
          x1 := -b / (2 * a);
          x2 := x1;
        end
       else
         begin
           {уравнение имеет два разных корня}
           x1 := (-b + sqrt(discriminant)) / (2 * a);
           x2 := (-b - sqrt(discriminant)) / (2 * a);
         end;
       
       {вывод корней уравнения}
       writeln('x1 = ', x1:8:3);
       writeln('x2 = ', x2:8:3);
     end;
  writeln('Press Enter to Exit...');
  readln;
end.

Функция sqr языка Pascal используется для возведения числа в квадрат.
Функция sqrt используется для получения квадратного корня числа.
В программе используется форматированный вывод вещественных чисел. variable:8:3 - означает, что для вывода переменной предусмотрено 8 символов, 5 из них под целую часть и 3 под дробную.

Смотрите также: