помогите быстрее по информатике 9 класс найдите ошибки
var a,b,c,D,x1,x2:real;
begin
writeln('введите a,b,c');
readln(a,b,c);
if a=0 thn if b=0 then if c=0 then writeln('x любое')
else writeln('нет решений')
ele begin
x1:=c/b;
writeln('x=',x1:12:6);
end
else begin
d:=bb-4ac;
if d>0 then begin
x1:=(-b-sqrt(D))/(2a);
x2:=(-b+sqrt(D))/(2a);
writeln('x1=',x1:12:6);
writeln('x2=',x2:12:6);
end
else if D=0 then bgin
x1:=-b/(2a);
writeln('x=',x1:12:6);
end
else write ln('нет решений,);
end;
readln;
end.
Answers & Comments
Ответ:
В 5 строчке надо было написать 'then', а написано 'thn'
В 7 строчке 'else' должно быть, а написано 'ele'
Строчка 'd:=bb-4ac' тоже неверная. Переменной bb не было, поэтому, кажется, должно быть b.
Там много ошибок, поэтому я немного подправила код. Но он всё равно не будет работать, потому что там используется конструкция if else неправильно (лучше ещё раз переписать код и как-то изменить эту конструкцию. там много else, а по правилам, к каждому if относится только одно else. Самостоятельно же else работать не может без if)
var a,b,c,D,x1,x2:real;
begin
writeln('введите a,b,c');
readln(a,b,c);
if a=0 then if b=0 then if c=0 then writeln('x любое')
else writeln('нет решений')
else begin
x1:=c/b;
writeln('x=',x1:12:6);
end;
else begin
d:=b-4ac;
if d>0 then begin
x1:=(-b-sqrt(D))/(2a);
x2:=(-b+sqrt(D))/(2a);
writeln('x1=',x1:12:6);
writeln('x2=',x2:12:6);
end;
else if D=0 then begin
x1:=-b/(2a);
writeln('x=',x1:12:6);
end;
else writeln('нет решений' );
end;
readln;
end.
begin
writeln('введите a,b,c');
readln(a,b,c);
if a=0 then
begin
if b=0 then
if c=0 then
writeln('x-любое')
else
writeln('нет решений');
end;
if a <> 0.0 then
begin
D:=b*b-4*a*c;
if D > 0 then
begin
x1:=(-b - sqrt(D))/(2*a);
x2:=(-b + sqrt(D))/(2*a);
writeln('x1 =',x1:12:6);
writeln('x2 =',x2:12:6);
end;
if D = 0 then
begin
x1:=-b/(2*a);
if b <> 0 then
writeln('x =',x1:12:6);
end;
if D < 0 then
writeln('нет решений');
end;
end.