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

В про­грам­ме опи­сан од­но­мер­ный це­ло­чис­лен­ный мас­сив A с ин­дек­са­ми от 0 до 10. Ниже пред­став­лен фраг­мент этой про­грам­мы, в ко­то­ром зна­че­ния эле­мен­тов мас­си­ва сна­ча­ла за­да­ют­ся, а затем ме­ня­ют­ся.

 

Бей­сикPython

FOR i = 0 TO 10

    A(i) = 10-i

NEXT i

FOR i = 0 TO 5

    A(10-i) = A(5-i)

    A(5+i) = A(i)

NEXT i

 

for i in range(0, 11):

    A[i] = 10-i

for i in range(0, 6):

    A[10-i] = A[5-i]

    A[5+i] = A[i]

Пас­кальАл­го­рит­ми­че­ский язык

for i : = 0 to 10 do

    A[i] : = 10-i;

for i : = 0 to 5 do begin

    A[10-i] : = A[5-i];

    A[5+i]: = A[i];

end;

нц для i от 0 до 10

    A[i] : = 10-i

кц

нц для i от 0 до 5

    A[10-i] : = A[5-i];

    A[5+i] : = A[i];

кц

 

Си++

 

for (i = 0; i <= 10; i++) {

    A[i] = 10-i;

}

for (i = 0; i <= 5; i++) {

    A[10-i] = A[5-i];

    A[5+i] = A[i];

}

 

Чему будут равны эле­мен­ты этого мас­си­ва?

 

1)  9 8 7 6 5 10 9 8 7 6 10

2)  10 9 8 7 6 5 6 7 8 9 10

3)  10 9 8 7 6 10 9 8 7 6 10

4)  5 6 7 8 9 10 9 8 7 6 5

Спрятать решение

Ре­ше­ние.

Пер­вый цикл, за­пол­ня­ем мас­сив:

i=0: a[0] = 10,

i=1: a[1] = 9,

i=2: a[2] = 8,

...

i=10: a[10] = 0.

 

Вто­рой цикл, не из­ме­ня­ют­ся пер­вые пять эле­мен­тов:

i=0:

a[10] = a[5] = 5, a[5] = a[0] = 10.

i=1:

a[9] = a[4] = 6, a[6] = a[1] = 9,

i=2:

a[8] = a[3] = 7, a[7] = a[2] = 8,

i=3:

a[7] = a[2] = 8, a[8] = a[3] = 7,

i=4:

a[6] = a[1] = 9, a[9] = a[4] = 6,

i=5:

a[5] = a[0] = 10, a[10] = a[5] = 10.

 

При i=5 эле­мент a[10] за­да­вал­ся через уже из­ме­нив­ший­ся эле­мент a[5].

 

В итоге по­лу­ча­ем сле­ду­ю­щие эле­мен­ты: 10, 9, 8, 7, 6, 10, 9, 8, 7, 6, 10.

 

Пра­виль­ный ответ ука­зан под но­ме­ром 3.