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

Ниже при­ведён фраг­мент про­грам­мы, за­пи­сан­ный на четырёх язы­ках про­грам­ми­ро­ва­ния. Мас­сив A дву­мер­ный; в про­грам­ме рас­смат­ри­ва­ет­ся его фраг­мент, со­от­вет­ству­ю­щий зна­че­ни­ям ин­дек­сов от 1 до n.

Бей­сикПас­каль

FOR i = 1 TO n

    c = A(i,i)

    A(i,i) = A(i,n–i+1)

    A(i,n–i+1) = c

NEXT i

for i := 1 to n do

begin

    c := A[i,i];

    A[i,i] := A[i,n–i+1];

    A[i,n–i+1] := c

end;

Си++Ал­го­рит­ми­че­ский язык

for (i = 1; i <= n; i++) {

    c = A[i][i];

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

    A[i][n-i+1] = c;

}

нц для i от 1 до n

    c := A[i,i]

    A[i,i] := A[i,n–i+1]

    A[i,n–i+1] := c

кц

Python

for i in range(1, n+1):

    c = A[i,i]

    A[i,i] = A[i,n–i+1]

    A[i,n–i+1] = c

 

Пред­ста­вим рас­смот­рен­ный фраг­мент мас­си­ва в виде квад­рат­ной таб­ли­цы, в ко­то­рой для эле­мен­та мас­си­ва A[i, j] ве­ли­чи­на i яв­ля­ет­ся но­ме­ром стро­ки, а ве­ли­чи­на j  — но­ме­ром столб­ца, в ко­то­ром рас­по­ло­жен эле­мент. Тогда дан­ный ал­го­ритм ме­ня­ет ме­ста­ми

 

1)  два столб­ца в таб­ли­це

2)  две стро­ки в таб­ли­це

3)  эле­мен­ты двух диа­го­на­лей таб­ли­цы

4)  эле­мен­ты диа­го­на­ли и стро­ки таб­ли­цы

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

Ре­ше­ние.

За­ме­тим, что эле­мент A[i,i]  — диа­го­наль­ный, эле­мент A[i,n–i+1]  — эле­мент вто­рой диа­го­на­ли таб­ли­цы. Таким об­ра­зом, ал­го­ритм ме­ня­ет ме­ста­ми эле­мен­ты двух диа­го­на­лей таб­ли­цы.

 

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

Источник: ЕГЭ по ин­фор­ма­ти­ке 08.07.2013. Вто­рая волна. Ва­ри­ант 603