Задания
Версия для печати и копирования в MS Word
Тип Д16 № 3392
i

В про­грам­ме опи­сан од­но­мер­ный це­ло­чис­лен­ный мас­сив 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.