Вопрос задан 09.05.2020 в 18:45. Предмет Информатика. Спрашивает Теляк София.

Подскажите пожалуйста, где в програме вычисления корней квадратного уравнения допущена ошибка.

Написана на паскале. Program Dis; var x1, a, b, c, x2, d := real; begin wrireln('введите a'); readln(a); wrireln('введите b'); readln(b); wrireln('введите c'); readln(c); d :=sqr(b)-(4*a*c); writeln('D=', d); if d>0 then x1 :=(-1*b-sqrt(d))/(2*a); x2 :=(-1*b+sqrt(d))/(2*a); writeln('x1=', x1); writeln('x2=', x2) else begin if d<0 then writeln('х не существует') else begin x1 :=(-1*b+sqrt(d))/(2*a); writeln('x1=', x1); end end end.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Харькина Ирина.
1. Если D>0, то квадратное уравнение имеет 2 корня. После вычисления X1 нужно добавить X2:=(-1*b-sqrt(d))/(2*a); и в начале описать переменную X2 : real;
2. По хорошему нужно проверять, не равен ли коэффициент a нулю. Если а=0, то при вычислении Х1 и Х2 получится деление на ноль. Поэтому Х1 и Х2 нужно вычислять только если а не равно нулю (поставить условие if a<>0 then ...). В противном случае: else X1:=-c/b.
0 0

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

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

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