РУҚА
25

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

ЕГЭ · Информатика · Тапсырма 25 · Алгоритмдер және орындаушылар
КүрделіФИПИD7516CҚысқа жауап≈ 3 минутТалдау 3 қадамЖауап сверен с ключом
Условие

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

Python
1A = [2, 5, 4, 8, 7, 1, 0, 3, 9, 6]
2c = 0
3for i in range(1, 10):
4    if A[i] > A[0]:
5        c = c + 1
6        t = A[i]
7        A[i] = A[0]
8        A[0] = t
Тапсырманы ашып, өзіңіз шешіңіз
Дальше ответЕгер әлі шешіп жатсаңыз – кеңестерден бастаңыз: олар жауапқа жетелейді, бірақ оны ашпайды.
К подсказкам

Шешім по шагам

3 қадам
1

В начале $A[0]=2$, $c=0$. При $i=1$: $A[1]=5>2$, поэтому происходит обмен, $A[0]$ становится равным 5, а $c=1$.

$$A[0]=5,\quad c=1$$
2

При $i=2$: $A[2]=4\not>5$, обмена нет. При $i=3$: $A[3]=8>5$, происходит обмен, $A[0]$ становится равным 8, а $c=2$.

$$A[0]=8,\quad c=2$$

Для индексов $i=4,5,6,7$ значения не превышают 8. При $i=8$: $A[8]=9>8$, происходит третий обмен, и $c$ становится равным 3. При $i=9$: $6\not>9$.

$$c=3$$
Жауап
3
3
так ответ выглядит в бланке

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

Считать количество элементов массива, больших первоначального значения $A[0]=2$, не учитывая его изменения.

Забыть, что после каждого обмена значение $A[0]$ меняется.

Увеличить $c$ при сравнении, но не выполнить обмен перед следующей итерацией.

Закрепить приёмВ теме «Алгоритмдер және орындаушылар» ещё 431 тапсырма — жауабымен және дәл осындай талдауымен.
Жаттығу

Тапсырманы қалай шешу керек 25 ЕГЭ, информатика

Бұл есептің талдауы келесіге бөлінген: 3 шага: видно, откуда берётся каждое число и где теряется балл. Жауап есептеулердің жанында келтірілген, олардың орнына емес.

Задача из темы «Алгоритмдер және орындаушылар»: в ней 432 задачи, и у каждой есть такой же разбор. Тіркеу қажет емес.