РУҚА
25

Решение: Подсчёт обменов в массиве

ЕГЭ · Информатика · Задание 25 · Алгоритмы и исполнители
ПовышеннаяФИПИE9A356Короткий ответ≈ 3 минутыРазбор в 5 шаговОтвет сверен с ключом
Условие

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

Python
1s = 0
2for j in range(9):
3    if A[j] > A[j+1]:
4        s = s + 1
5        t = A[j]
6        A[j] = A[j+1]
7        A[j+1] = t
Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

Решение по шагам

5 шагов
1

Начинаем с массива $[3,1,7,6,5,4,8,2,9,0]$ и $s=0$. При $j=0$ выполняется условие $3>1$, поэтому $s=1$, после обмена массив становится $[1,3,7,6,5,4,8,2,9,0]$.

$$s=1$$
2

При $j=1$ условие $3>7$ ложно. При $j=2$ выполняется $7>6$: $s=2$, после обмена массив становится $[1,3,6,7,5,4,8,2,9,0]$.

$$s=2$$
3

При $j=3$ выполняется $7>5$: $s=3$. При $j=4$ выполняется $5>4$: $s=4$.

$$s=4$$
4

При $j=5$ условие $4>8$ ложно. При $j=6$ выполняется $8>2$: $s=5$. При $j=7$ условие $2>9$ ложно.

$$s=5$$

При $j=8$ выполняется условие $9>0$, поэтому переменная $s$ увеличивается ещё на единицу.

$$s=5+1=6$$
Ответ
6
6
так ответ выглядит в бланке

Где здесь ошибаются

Считать сравнения, а не только случаи выполнения условия.

Забыть, что после каждого успешного сравнения соседние элементы меняются местами.

Выполнить цикл до $j=9$, хотя последний допустимый индекс в цикле — $j=8$.

Закрепить приёмВ теме «Алгоритмы и исполнители» ещё 431 задача — с ответом и таким же разбором.
Тренироваться

Как решать задание 25 ЕГЭ, информатика

Разбор этой задачи разложен на 5 шагов: видно, откуда берётся каждое число и где теряется балл. Ответ приведён рядом с выкладками, а не вместо них.

Задача из темы «Алгоритмы и исполнители»: в ней 432 задачи, и у каждой есть такой же разбор. Регистрация не нужна.