Вопрос задан 25.02.2019 в 16:38. Предмет Информатика. Спрашивает Кузьмин Дима.

Program kv_ur;uses crt;vara,b,c,d: integer;x1,x2,x: real;beginWriteln ('Введите a,b,c');Read

(a,b,c);d:=sqr(b)-4*a*c;if d>0 thenbeginx1:=-b-sqrt(d)/2*a;x2:=-b+sqrt(d)/2*a;Writeln ('Корни уравнения: x1=',x1,' x2=',x2);endelseif d<0 thenWrite ('Нет корней')elsebeginx:=-b/2*a;Writeln ('Корень уравнения: x=',x);end;end.написать проверку
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Егиазарян Арсен.
Var
  a, b, c, d: integer;
  x1, x2, x: real;

begin
  Writeln('Введите a,b,c');
  Read(a, b, c);
  d := sqr(b) - 4 * a * c;
  if d > 0 then
  begin
    x1 := (-b - sqrt(d)) / (2 * a);
    x2 := (-b + sqrt(d)) / (2 * a);
    Writeln('Корни уравнения: x1=', x1, ' x2=', x2);
    { Потом убрать отсюда ... }
    Writeln('*** Делаем проверку ***');
    Writeln(a, 'x(', x1:0:5, ')^2+', b, 'x(', x1:0:5, ')+', c, '=', a * sqr(x1) + b * x1 + c:0:5);
    Writeln(a, 'x(', x2:0:5, ')^2+', b, 'x(', x2:0:5, ')+', c, '=', a * sqr(x2) + b * x2 + c:0:5)
    { ... и досюда }
  end
  else
  if d < 0 then
    Write('Нет корней')
  else
  begin
    x := -b / (2 * a);
    Writeln('Корень уравнения: x=', x);
  end;
end.

Тестовое решение:

Введите a,b,c
2 -2 -40
Корни уравнения: x1=-4 x2=5
*** Делаем проверку ***
2x(-4.00000)^2+-2x(-4.00000)+-40=0.00000
2x(5.00000)^2+-2x(5.00000)+-40=0.00000


0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Код, который вы предоставили, представляет собой простую программу на языке Pascal для решения квадратного уравнения. Однако, у него есть несколько ошибок, таких как отсутствие скобок в формуле вычисления корней. Вам также необходимо добавить проверку деления на ноль перед вычислением корней. Давайте внесем эти изменения и добавим проверку:

```pascal Program kv_ur; uses crt; var a, b, c, d: integer; x1, x2, x: real;

begin Writeln('Введите a, b, c'); Read(a, b, c);

d := sqr(b) - 4 * a * c;

if d > 0 then begin x1 := (-b - sqrt(d)) / (2 * a); x2 := (-b + sqrt(d)) / (2 * a); Writeln('Корни уравнения: x1=', x1, ' и x2=', x2); end else if d < 0 then Write('Нет корней') else begin if a <> 0 then begin x := -b / (2 * a); Writeln('Корень уравнения: x=', x); end else Write('Ошибка: коэффициент a не может быть равен нулю'); end; end. ```

Внесенные изменения включают в себя:

1. Добавление скобок в формулы для вычисления корней. 2. Проверка деления на ноль перед вычислением корней, а также проверка того, что коэффициент `a` не равен нулю для избежания деления на ноль.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос