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

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

Бей­сикPython

FOR i = 0 TO 10

    A(i) = i+1

NEXT i

FOR i = 0 TO 10

    A(i) = A(10-i)

NEXT i

 

for i in range(0, 11):

    A[i] = i+1

for i in range(0, 11):

    A[i] = A[10-i]

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

for i:=0 to 10 do

    A[i]:=i+1;

for i:=0 to 10 do

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

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

    A[i] : = i+1

кц

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

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

кц

 

Си++

 

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

    A[i] = i+1;

}

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

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

}

 

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

 

1)  10 9 8 7 6 5 4 3 2 1 0

2)  11 10 9 8 7 6 5 4 3 2 1

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

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

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

Ре­ше­ние.

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

i=0: a[0]=1,

i=1: a[1]=2,

i=2: a[2]=3,

...

i=10: a[10]=11.

 

Вто­рой цикл, ме­ня­ем зна­че­ния всех эле­мен­тов:

Об­ра­ща­ем­ся к зна­че­ни­ям, по­лу­чен­ным при за­пол­не­нии мас­си­ва.

i=0: a[0]=a[10]=11,

i=1: a[1]=a[9]=10,

...

i=5: a[5]=a[5]=6,

i=6: a[6]=a[4]=7(На­чи­ная с этого эле­мен­та об­ра­ща­ем­ся к эле­мен­там уже изменённым),

...

i=10: a[10]=a[0] = 11.

 

По­это­му в ре­зуль­та­те вы­пол­не­ни про­грам­мы эле­мен­ты мас­си­ва будут равны: 11, 10, 9, 8, 7, 6, 7, 8, 9, 10, 11.

 

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