Решение: Подсчёт обменов в массиве
В программе используется одномерный целочисленный массив $A$ с индексами от $0$ до $9$. Значения элементов равны $4, 7, 3, 8, 5, 0, 1, 2, 9, 6$ соответственно, то есть $A[0] = 4$, $A[1] = 7$ и так далее. Определите значение переменной $c$ после выполнения фрагмента программы: начиная с $i = 1$ и до $i = 9$, если $A[i-1] < A[i]$, переменная $c$ увеличивается на единицу, а соседние элементы $A[i-1]$ и $A[i]$ меняются местами.
Решение по шагам
7 шаговНачальный массив: $[4, 7, 3, 8, 5, 0, 1, 2, 9, 6]$, переменная $c = 0$.
При $i = 1$: $4 < 7$, поэтому элементы меняются местами, а $c$ становится равным $1$. Массив: $[7, 4, 3, 8, 5, 0, 1, 2, 9, 6]$.
При $i = 2$: $4 < 3$ — неверно, обмена нет.
При $i = 3$: $3 < 8$, выполняется обмен, $c = 2$. При $i = 4$: $3 < 5$, выполняется обмен, $c = 3$.
При $i = 5$: $3 < 0$ — неверно. При $i = 6$: $0 < 1$, выполняется обмен, $c = 4$.
При $i = 7$: $0 < 2$, выполняется обмен, $c = 5$. При $i = 8$: $0 < 9$, выполняется обмен, $c = 6$.
При $i = 9$: $0 < 6$, выполняется обмен, $c = 7$.
Где здесь ошибаются
Считать сравнения в исходном массиве, не учитывая выполненные обмены.
Забыть, что переменная $c$ увеличивается только при выполнении условия.
Принять количество итераций цикла за значение переменной $c$.