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

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

 

Бей­сикPython

FOR i = 0 TO 10

    A(i) = i-1

NEXT i

FOR i = 10 TO 1 STEP -1

    A(i-1) = A(i)

NEXT i

 

for i in range(0, 11):

    A[i] = i-1

for i in range(10, 0, -1):

    A[i-1] = A[i]

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

for i:=0 to 10 do

    A[i]:=i-1;

for i:=10 downto 1 do

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

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

    A[i] : = i-1

кц

нц для i от 10 до 1 шаг -1

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

кц

 

Си++

 

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

    A[i] = i-1;

}

for (i = 10; i <= 1; i--) {

    A[i-1] = A[i];

}

 

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

 

1)  9 9 9 9 9 9 9 9 9 9 9

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

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

4)  -1 -1 0 1 2 3 4 5 6 7 8

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

Ре­ше­ние.

Итак, пой­дем по про­грам­ме:

От 0 до 10 вы­пол­ня­ем

A[i]:=i - 1, т. е. по по­ряд­ку -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

 

От 10 до 1 вы­пол­ня­ем

A[i-1]:=A[i], т. е. спра­ва на­ле­во каж­дый эле­мент мас­си­ва будет при­ни­мать зна­че­ние спра­ва сто­я­щей ячей­ки, так что

 

A[9]:=A[10]=9, a A[8]:=A[9]=A[10]=9 и т. д., так что все зна­че­ния ячей­ки будут равны 9.

 

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