3, 6 (но с уловием, что это последняя строка кода перед end.)
Объяснение:
1.) if x>0 or y>0 then k:= k+1 else k:= 0; - неверно, потому что при использовании and или or сравниваемые условия необходимо указывать в ( )
2.) if 10 then k:= k+1; - должно быть указано условие, просто число не может быть условием (по крайней мере в pascal)
3.) if x<>0 then y:=100/x; - всё ОК
4.) if x - нет then,
5.) if x>0 then y:= 100 div x; else y:= 0; - перед else не ставится ;
6.) if (x mod y=0) then else writeln(‘no’) - всё ОК, с условием, что это последняя срока кода перед end. Если условие будет истинно, то просто ничего не выполнится. И ещё небольшой комментарий: символ ’ не используется для написания строки, нужен символ '. Возможно это ты малость ошибся, при переписывании задания
Твой код не проверял. Недавно кому-то делал на Delphi. Переделал на Pascal.
Приложил картинкой, если запутаешься. Если что-то не так работает, я поправлю.
//Pascal var a, b, c, d, x1, x2: real; begin write('Введите a = '); readln(a); write('Введите b = '); readln(b); write('Введите c = '); readln(c); if ((a = 0) and (b = 0) and (c = 0)) then writeln('X любое') else if a <> 0 then begin d := sqr(b) - 4 * a * c; if (d > 0) then begin x1 := (-b+sqrt(d))/(2*a); x2 := (-b-sqrt(d))/(2*a); writeln('x1 = ', x1); writeln('x2 = ', x2); end else if d = 0 then begin x1:=-b/(2*a); x2:=x1; writeln('x1 = ', x1); //writeln('x2 = ', x2); end else if d < 0 then writeln('Корней нет.'); end else if (a = 0) and (b = 0) then writeln('Решений нет.') else if (a = 0) then begin x1 := (-c)/b; writeln('x = ', x1); end; end.
3, 6 (но с уловием, что это последняя строка кода перед end.)
Объяснение:
1.) if x>0 or y>0 then k:= k+1 else k:= 0; - неверно, потому что при использовании and или or сравниваемые условия необходимо указывать в ( )
2.) if 10 then k:= k+1; - должно быть указано условие, просто число не может быть условием (по крайней мере в pascal)
3.) if x<>0 then y:=100/x; - всё ОК
4.) if x - нет then,
5.) if x>0 then y:= 100 div x; else y:= 0; - перед else не ставится ;
6.) if (x mod y=0) then else writeln(‘no’) - всё ОК, с условием, что это последняя срока кода перед end. Если условие будет истинно, то просто ничего не выполнится. И ещё небольшой комментарий: символ ’ не используется для написания строки, нужен символ '. Возможно это ты малость ошибся, при переписывании задания
Приложил картинкой, если запутаешься. Если что-то не так работает, я поправлю.
//Pascal
var
a, b, c, d, x1, x2: real;
begin
write('Введите a = '); readln(a);
write('Введите b = '); readln(b);
write('Введите c = '); readln(c);
if ((a = 0) and (b = 0) and (c = 0)) then
writeln('X любое')
else
if a <> 0 then
begin
d := sqr(b) - 4 * a * c;
if (d > 0) then
begin
x1 := (-b+sqrt(d))/(2*a);
x2 := (-b-sqrt(d))/(2*a);
writeln('x1 = ', x1);
writeln('x2 = ', x2);
end
else
if d = 0 then
begin
x1:=-b/(2*a);
x2:=x1;
writeln('x1 = ', x1);
//writeln('x2 = ', x2);
end
else
if d < 0 then
writeln('Корней нет.');
end
else
if (a = 0) and (b = 0) then
writeln('Решений нет.')
else
if (a = 0) then
begin
x1 := (-c)/b;
writeln('x = ', x1);
end;
end.