Выдаёт ошибку (Встречено 'else', а ожидался оператор) Что делать?? Program R ; var...

0 голосов
289 просмотров

Выдаёт ошибку (Встречено 'else', а ожидался оператор)
Что делать??
Program R ;
var a,b,c,x,D,x1,x2:real ;
begin
readln (a,b,c) ;
D:= a*(x*x)+b*x+c ;
if D>0 then x1:= (-b+sqrtD)/(2*a) ;
x2:= (-b-sqrtD)/(2*a) ;
else ('Корней нет') ;
if D=0 then x:= (-b+sqrtD)/(2*a) ;
writeln ('x1=;x1) ;
writeln ('x2=;x2) ;
end.


Информатика (15 баллов) | 289 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

1. Исправьте условие

if D>0 then x1:= (-b+sqrtD)/(2*a) ;
x2:= (-b-sqrtD)/(2*a) ;
else ('Корней нет') ;

на
if D>0 then begin
  x1:= (-b+sqrt(D))/(2*a);
  x2:= (-b-sqrt(D))/(2*a);
end
else  writeln ('Корней нет') ;

и здесь:

if D=0 then x:= (-b+sqrtD)/(2*a) ;
writeln ('x1=;x1) ;
writeln ('x2=;x2) ;

на
if D=0 then begin
  x:= (-b+sqrt(D))/(2*a) ;
  writeln('x = ', x);
end;

writeln ('x1=',x1) ;
writeln ('x2=',x2) ;
 






(13.9k баллов)