
Вопрос задан 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.

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

Отвечает Харькина Ирина.
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.
2. По хорошему нужно проверять, не равен ли коэффициент a нулю. Если а=0, то при вычислении Х1 и Х2 получится деление на ноль. Поэтому Х1 и Х2 нужно вычислять только если а не равно нулю (поставить условие if a<>0 then ...). В противном случае: else X1:=-c/b.


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

Информатика 2132

Информатика 63

Информатика 14

Информатика 32

Информатика 19

Информатика 15

Информатика 175

Информатика 31

Информатика 48
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili