Ниже представлен записанный на разных языках программирования фрагмент одной и той же программы. В программе описан одномерный целочисленный массив A, в представленном фрагменте программы обрабатываются элементы массива с индексами от 1 до 24.
| Бейсик | Паскаль |
|---|---|
n = 24 A(1) = 4 FOR i = 2 TO n A(i) = 4*A(i–1) MOD 10 NEXT i | n:=24; A[1]:=4; for i:= 2 to n do begin A[i] := 4*A[i–1] mod 10; end;
|
| Си++ | Алгоритмический язык |
n=24; A[1] = 4; for (i = 2; i <= n; i++) { A[i] = 4*A[i–1] % 10; }
| n:=24 A[1] := 4 нц для i от 2 до n A[i] = mod (4*A[i–1], 10) кц |
| Python | |
n = 24 A[1] = 4 for i in range(2, n+1): A[i] = 4*A[i–1] % 10 | |
Чему будет равно значение элемента A[24] (то есть элемента массива с индексом 24) после выполнения фрагмента программы?
В цикле каждый последующий элемент массива равен остатку от деления на 10 предыдущего элемента массива, умноженного на 4.
Проделаем цикл, представленный в программе:
A[2] = 6;
A[3] = 4;
A[4] = 6;
...
Видно, что элементы массива повторяются с периодом 2, то есть при заполнении элементов массива повторяется последовательность 6; 4. Элемент A[24] соответствует элементу A[2] и равен 6.

