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

В про­грам­ме ис­поль­зу­ет­ся од­но­мер­ный це­ло­чис­лен­ный мас­сив А с ин­дек­са­ми от 0 до 9. Зна­че­ния эле­мен­тов равны 5, 6, 5, 8, 5, 4, 1, 2, 9, 6 со­от­вет­ствен­но, т. е. А[0] = 5, А[1] = 6 и т. д.

Опре­де­ли­те зна­че­ние пе­ре­мен­ной с после вы­пол­не­ния сле­ду­ю­ще­го фраг­мен­та этой про­грам­мы (за­пи­сан­но­го ниже на раз­ных язы­ках про­грам­ми­ро­ва­ния).

Бей­сик Python

c = 0

FOR i = 0 TO 8

    IF A(i) <= A(9) THEN

        c = c + 1

        t = A(i)

        A(i) = A(9)

        A(9) = t

    ENDIF

NEXT i

c = 0

for i in range(0, 9):

    if A[i] <= A[9]:

        c = c + 1

        t = A[i]

        A[i] = A[9]

        A[9] = t

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

c := 0

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

    если A[i] <= A[9] то

        c := c + 1

        t := A[i]

        A[i] := A[9]

        A[9] := t

    все

кц

c := 0;

for i := 0 to 8 do

    if A[i] <= A[9] then

    begin

        c := c + 1;

        t := A[i];

        A[i] := A[9];

        A[9] := t;

    end;

Си++

c = 0;

for (i = 0; i < 9; i++)

    if (A[i] <= A[9])

    {

        c++;

        t = A[i];

        A[i] = A[9];

        A[9] = t;

    }

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

Ре­ше­ние.

Про­грам­ма про­хо­дит по мас­си­ву от 0 до 8, срав­ни­ва­ет A[i] с A[9]. Если A[i] не боль­ше, то они с A[9] ме­ня­ют­ся ме­ста­ми. Пе­ре­мен­ная c счи­та­ет ко­ли­че­ство таких об­ме­нов.

 

Сна­ча­ла A[9] = 6. Пер­вое число, не боль­шее 6, это A[0] = 5. Те­перь A[9] = 5, c = 1.

Сле­ду­ю­щее число, не боль­шее 5, это снова 5 = A[2]. По-преж­не­му A[9] = 5, но c = 2.

Идём даль­ше по мас­си­ву. Пер­вое число, не боль­шее 5, это снова 5 = A[4]. A[9] = 5, c = 3.

Далее пер­вое число, не боль­шее 5, это A[5] = 4. Те­перь A[9] = 4, c = 4.

A[6] = 1 < 4 = A[9] \Rightarrow A[9] = 1, c = 5.

На остав­шей­ся части мас­си­ва нет чисел не боль­ше 1, цикл за­кан­чи­ва­ет­ся.


Аналоги к заданию № 9370: 9769 9805 10295 ... Все