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

