Решил побаловаться с 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. В других случаях все работает нормально.
Проверял свое каждое действие и почти в начале затупил. Выдает ошибку: Неверная вещественная операция в строке 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;