В программе описан одномерный целочисленный массив А с индексами от 0 до 10. Ниже представлен фрагмент этой программы, записанный на разных языках программирования.
Бейсик | Паскаль |
|---|---|
FOR i = 0 ТО 10 A (i) = i-1 NEXT i FOR i = 1 TO 10 A(i-1) = A(i) NEXT i A(10) = 10
| for i = 0 to 10 do a[i] := i-1; for i := 1 to 10 do a[i-1] := a[i]; a[10] := 10;
|
Си++ | Алгоритмический язык | for (i = 0; i <= 10; i++) { A[i] = i-1; } for (i = 1; i <= 10; i++) { A[i-1] = A[i]; } A[10] = 10;
| нц для i от 0 до 10 A[i] := i-1 кц нц для i от 1 до 10 A[i-1] := A[i] кц А[10] := 10
|
| Python | |
for i in range(0, 11): A[i] = i-1 for i in range(1, 10): A[i-1] = A[i] A[10] = 10 | |
Чему окажутся равны элементы этого массива после выполнения фрагмента программы?
1) 9 9 9 9 9 9 9 9 9 9 10
2) 1 2 3 4 5 6 7 8 9 10 10
3) -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 10
4) 0 1 2 3 4 5 6 7 8 9 10
Первый цикл, заполняем массив:
i = 0: a[0] = −1,
i = 1: a[1] = 0,
i = 2: a[2] = 1,
...
i = 10: a[10] = 9.
Второй цикл, меняем значения всех элементов:
i = 1: a[0] = a[1] = 0,
i = 2: a[1] = a[2] = 1,
...
i = 6: a[7] = a[8] = 7
i = 7: a[8] = a[9] = 8
i = 11: a[9] = a[10] = 9,
Выполним последнее действие: a[10] = 10.
Поэтому в результате выполнении программы элементы массива будут равны: 0 1 2 3 4 5 6 7 8 9 10.
Правильный ответ указан под номером 4.

