Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Pascal. Ошибка: неверная вещественная операция.

Doogle Профи (794), закрыт 9 лет назад
Решил побаловаться с pascal. Начал с простенького - решение квадратного уравнения.
Проверял свое каждое действие и почти в начале затупил. Выдает ошибку: Неверная вещественная операция в строке 7.В чем может быть проблема?
Program sd1;
Uses CRT;
Var a,b,c,D:integer;x1,x2:real;
begin
readln(a,b,c);
D:=b*b-4*a*c;
x1:=(-b+sqrt(D))/2*a;
x2:=(-b-sqrt(D))/2*a;
if D>0 then writeln('Ïåðâûé êîðåíü=',x1,'Âòîðîé êîðåíü',x2) else if D=0 then
writeln('Ïåðâûé êîðåíü=',x1,'Âòîðîãî êîðíÿ íåò')
else if D<0 then
writeln('Êîðíåé íåò');
end.
7 строка: x1:=(-b+sqrt(D))/2*a;
Дополнен 9 лет назад
P.S Ошибка вылезает только после того, как D<0. В других случаях все работает нормально.
Лучший ответ
kaiu Высший разум (116942) 9 лет назад
Корень из целого Д
Поставь все реал
DoogleПрофи (794) 9 лет назад
Не помогло.
P.S Ошибка вылезает только после того, как D<0. В других случаях все работает нормально.
kaiu Высший разум (116942) ну да, корень из отрицательного не может быть, надо условие поставить тогда
DoogleПрофи (794) 9 лет назад
Какое именно?
kaiu Высший разум (116942) D:=b*b-4*a*c; if(D<0) WriteLn('нет корней') else begin работаем по корням end;
Остальные ответы
Krab Bark Искусственный Интеллект (293217) 9 лет назад
Программа по комментарию kaiu скомпилируется, но в там есть еще одна ошибка.
Не /2*a, а /(2*a);
Похожие вопросы