Решение квадратного уравнения - Pascal (4345)

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

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

Написал, но работает не совсем исправно, подправьте, пожалуйста, где есть ошибки. P.S Если k<0 , то что надо + "Первый корень:0 Второй корень:не*число"
var a, b, c, D, x1, x2, k: real;
begin
 writeln('Введите A, B, C');
 readln(a,b,c);
 D:=sqr(b)-4*a*c;
 k:=sqrt(D);
 writeln('Дискриминант:', D);
 if k>0 then x1:=(-b+k)/(2*a);
 begin x2:=(-b-k)/(2*a); end;
 if k=0 then x1:=-b/(2*a);
 if k<0 then writeln('Корней нет');
writeln('Первый корень:', x1, ' Второй корень:', x2);
end.

Решение задачи: «Решение квадратного уравнения»

textual
Листинг программы
var a, b, c, D, x1, x2, k: real;
begin
 writeln('Введите A, B, C');
 readln(a,b,c);
 if a=0 then
  begin
   write('Это не квал\дратное уравнение');
   exit
  end;
 D:=sqr(b)-4*a*c;
 writeln('Дискриминант:', D);
 if D>=0 then
  begin
   k:=sqrt(D);
   if k=0 then
    begin
     x1:=-b/(2*a);
     write('Один корень ',x1:0:2);
    end
   else
    begin
     x1:=(-b-k)/(2*a);
     x2:=(-b+k)/(2*a);
     write('Первый корень: ',x1:0:2,' Второй корень: ',x2:0:2);
    end
  end
else write('Корней нет');
 
end.

Объяснение кода листинга программы

  1. Создается переменная a и присваивается ей значение 0. Если a равно 0, то выводится сообщение о том, что это не квадратное уравнение, и программа завершается.
  2. Вычисляется дискриминант D с помощью формулы D := sqr(b) - 4 * a * c.
  3. Проверяется значение D. Если D больше или равно 0, то выполняется следующий блок кода.
  4. Создается переменная k и присваивается ей значение квадратного корня из D с помощью функции sqrt(D).
  5. Проверяется значение k. Если k равно 0, то выполняется следующий блок кода.
  6. Вычисляются значения x1 и x2 с помощью формул x1 := -b/(2*a) и x2 := (-b+k)/(2*a).
  7. Выводится сообщение с найденными значениями корней x1 и x2.
  8. Если k не равно 0, то выполняется предыдущий блок кода.
  9. Если D меньше 0, то выводится сообщение о том, что корней нет.

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

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