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

В про­грам­ме ис­поль­зу­ет­ся од­но­мер­ный це­ло­чис­лен­ный мас­сив A с ин­дек­са­ми от 0 до 9. Зна­че­ния эле­мен­тов равны 8, 4, 3, 0, 7, 2, 1, 5, 9, 6 со­от­вет­ствен­но, т. е. A[0] = 8, A[1] = 4 и т. д. Опре­де­ли­те зна­че­ние пе­ре­мен­ной s после вы­пол­не­ния сле­ду­ю­ще­го фраг­мен­та этой про­грам­мы (за­пи­сан­но­го ниже на раз­ных язы­ках про­грам­ми­ро­ва­ния).

Бей­сикPython

s = 0

FOR j = 0 TO 8

    IF A(j) > A(j+1) THEN

        s = s + 1

        t = A(j)

        A(j) = A(j+1)

        A(j+1) = t

    ENDIF

NEXT j

s = 0

for j in range(9):

    if A[j] > A[j+1]:

        s = s + 1

        t = A[j]

        A[j] = A[j+1]

        A[j+1] = t

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

s := 0;

for j := 0 to 8 do

    if A[j] > A[j+1] then

    begin

        s := s + 1;

        t := A[j];

        A[j] := A[j+1];

        A[j+1] := t;

    end;

s := 0

нц для j от 0 до 8

    если A[j] > A[j+1] то

        s := s + 1

        t := A[j]

        A[j] := A[j+1]

        A[j+1] := t

    все

кц

Си++

s = 0;

for (j = 0; j < 9; j++) {

    if (A[j] > A[j+1])

    {

        s++;

        t = A[j];

        A[j] = A[j+1];

        A[j+1] = t;

    }

}

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

Ре­ше­ние.

Цикл про­хо­дит по мас­си­ву, срав­ни­вая те­ку­щее число со сле­ду­ю­щим. И если те­ку­щее боль­ше сле­ду­ю­ще­го, то s уве­ли­чи­ва­ет­ся на 1, а эле­мен­ты ме­ня­ют­ся ме­ста­ми.

8, 4, 3, 0, 7, 2, 1, 5, 9, 6; s = 0

4, 8, 3, 0, 7, 2, 1, 5, 9, 6; s = 1

4, 3, 8, 0, 7, 2, 1, 5, 9, 6; s = 2

4, 3, 0, 8, 7, 2, 1, 5, 9, 6; s = 3

4, 3, 0, 7, 8, 2, 1, 5, 9, 6; s = 4

4, 3, 0, 7, 2, 8, 1, 5, 9, 6; s = 5

4, 3, 0, 7, 2, 1, 8, 5, 9, 6; s = 6

4, 3, 0, 7, 2, 1, 5, 8, 9, 6; s = 7

4, 3, 0, 7, 2, 1, 5, 8, 9, 6; s = 7

4, 3, 0, 7, 2, 1, 5, 8, 6, 9; s = 8

Источник: ЕГЭ 05.05.2015. До­сроч­ная волна