Так как на большинстве версий "Паскаля" мы не можем установить шаг цикла в for, будем использовать цикл while для решения данной задачи.
Возьмём переменную i для хранения нужных нам значений, дадим ей значение равное 1001, запустим цикл while, который будет выполняться пока наша i <= 1025, в цикле у нас будет выводиться на экран значение переменной i, а затем переменная увеличиваться на 3.
//где-то не закрыла begin end var A:array [1..40] of integer; sa,s3,s10,k,i: integer; begin sa:=0; s10:=0; s3:=0; k:=0; writeln('исходные значения'); for i:=1 to 40 do begin A[i]:= random(21); write(A[i],'') end; writeln; for i:=1 to 40 do begin if A[i]mod 2<>0 then begin sa:=sa+A[i]; k:=k+1; if A[i]<10 then s10:=s10+A[i]; if A[i] mod 3=0 then s3:=s3+A[i]; //здесь было странное выражение end; end; //здесь writeln('среднее арефмитическое нечетных чисел',sa/k:5:0); writeln('сумма чисел, не превышающих', s10); writeln('сумма чисел, кратных трем', s3); End.
Так как на большинстве версий "Паскаля" мы не можем установить шаг цикла в for, будем использовать цикл while для решения данной задачи.
Возьмём переменную i для хранения нужных нам значений, дадим ей значение равное 1001, запустим цикл while, который будет выполняться пока наша i <= 1025, в цикле у нас будет выводиться на экран значение переменной i, а затем переменная увеличиваться на 3.
Алгоритм на языке Паскаль:
var
i : integer;
begin
i := 1001;
while i <= 1025 do
begin
write(i,' ');
i := i + 3;
end;
end.
var A:array [1..40] of integer;
sa,s3,s10,k,i: integer;
begin
sa:=0;
s10:=0;
s3:=0;
k:=0;
writeln('исходные значения');
for i:=1 to 40 do
begin
A[i]:= random(21);
write(A[i],'')
end;
writeln;
for i:=1 to 40 do
begin
if A[i]mod 2<>0 then
begin
sa:=sa+A[i];
k:=k+1;
if A[i]<10 then s10:=s10+A[i];
if A[i] mod 3=0 then
s3:=s3+A[i]; //здесь было странное выражение
end;
end; //здесь
writeln('среднее арефмитическое нечетных чисел',sa/k:5:0);
writeln('сумма чисел, не превышающих', s10);
writeln('сумма чисел, кратных трем', s3);
End.