Продвинутое решение квадратного уравнения
Если от вас требуют написать программу, которая решает квадратное и обрабатывает возможные ошибки, то вы найдете здесь такую программу. Мы предполагаем, что вы уже кое в чем разбираетесь, поэтому ничего не комментируем.
uses printer;
var a,b,c,d,x1,x2:real;
begin
writeln;
writeln ('Введите коэффициенты a,b,c:');
{$I-} read (a,b,c); {$I+}
if IoResult<>0 then begin
{Возникла ошибка!}
writeln ('Вы не ввели 3 числа, ',
'это что-то другое!');
reset (input); {очищаем стандартный
поток ввода перед ожиданием нажатия Enter}
readln;
halt; {а этим оператором можно
аварийно завершить программу}
end;
d:=sqr(b)-4*a*c;
if d<0 then begin
writeln ('Ошибка - дискриминант<0');
reset (input); readln; halt;
end;
x1:=(-b+sqrt(d))/(2*a);
x2:=(-b-sqrt(d))/(2*a);
{$I-}
writeln (lst,'x1=',x1:8:2,' x2=',x2:8:2);
{$I+}
if IoResult<>0 then
writeln ('Не удалось напечатать')
else writeln ('Результаты напечатаны');
reset (input); readln; halt;
end.