Var ar:array[1..s] of integer; n,m,i:integer; begin writeln('N'); readln(n); writeln('M'); readln(m); writeln('Array:'); for i:=1 to s do readln(ar[i]); writeln('First array:'); for i:=1 to s do begin write(ar[i]:4); if ar[i] div n<>0 then ar[i]:=ar[i]+m; end; writeln; writeln('Final array:'); for i:=1 to s do write(ar[i]:4); end.
Пример ввода: 3 3 1 2 3 4 5 Пример вывода: First array: 1 2 3 4 5 Final array: 1 2 6 7 8
Const
s=5;
Var
ar:array[1..s] of integer;
n,m,i:integer;
begin
writeln('N');
readln(n);
writeln('M');
readln(m);
writeln('Array:');
for i:=1 to s do
readln(ar[i]);
writeln('First array:');
for i:=1 to s do
begin
write(ar[i]:4);
if ar[i] div n<>0 then ar[i]:=ar[i]+m;
end;
writeln;
writeln('Final array:');
for i:=1 to s do
write(ar[i]:4);
end.
Пример ввода:
3
3
1
2
3
4
5
Пример вывода:
First array:
1 2 3 4 5
Final array:
1 2 6 7 8
//Блок-схема во вложении
70, 35, 43, 132, 121, 11, 60, 64, 24, 31
Объяснение:
1) Изначально s = 0, затем на каждой из 12 – 6 + 1 = 7 итераций к ней прибавляется 10, итого получится 70
2) Аналогично, s = 0 + 7 * (8 – 3) = 35
3) Итерация с i = 1: k = 2 * 4 + 1 = 9. Итерация с i = 2: k = 2 * 9 + 2 = 20. Итерация с i = 3: k = 2 * 20 + 3 = 43.
4) s = 0 + 12 * 11 = 132
5) s = 0 + 11 * (12 – 1) = 121
6) u = 26 – 1 – 2 – 3 – 4 – 5 = 11
7) s = 4 + 5 + … + 11 = 60
8) s = 1 * 2 * 2 * … * 2 (8 – 3 + 1 раз) = 64
9) y = 0 + 4 * 1 + 4 * 2 + 4 * 3 = 24
10) s = 3 + 2 * 2 + 2 * 3 + 2 * 4 + 2 * 5 = 31