Var s: integer; begin readln(s); if (s=12) or (s=1) or (s=2) then writeln('зима') else if (s=3) or (s=4) or (s=5) then writeln('весна) else (s=6) or (s=7) or (s=8) then writeln('лето') else writeln('осень'); end;
Не указано сколько раз оно должно принимать значение и каким образом вообще принять. Здесь оно 5 раз примет какие-то числа (каждое с новой строки), а потом выведет кол-во + и -. Значение 0 оно просто пропускает. Если все 5 чисел будут = 0, то и на выходе оно скажет, что было введено 0 значений с + и 0 значений с-.
Код (скриншот прилагается): var minus, plus, input, i: integer; begin minus:= 0; plus:= 0; for i:=0 to 4 do begin readln(input); if input > 0 then plus:=plus+1; else if input < 0 then minus:=minus+1; end; writeln(plus, ' positive and ', minus, ' negative numbers.'); end.
Я так понял, должен запуститься цикл и во время итерации при каждом проходе он должен выводить с новой строки то кол-во раз, сколько он выполнился.
var i: integer; {единственная переменная, которая нужна - счетчик} begin for i:=0 to 4 do {или нужное кол-во вместо 4} writeln(i); end.
Писал без отступов, но здесь и так пара строк. Программа полностью рабочая, но учтите, что счет ведется от 0 и цикл в примере повторится не 4, а 5 раз. На выходе будет: 0 1 2 3 4
Если хотите начинать с достаточно сменить значение с 0 на 1.
begin
readln(s);
if (s=12) or (s=1) or (s=2) then writeln('зима')
else
if (s=3) or (s=4) or (s=5) then writeln('весна)
else
(s=6) or (s=7) or (s=8) then writeln('лето')
else
writeln('осень');
end;