В программе используется одномерный целочисленный массив A с индексами от 0 до 9. Значения элементов равны 6, 7, 3, 8, 5, 1, 2, 0, 9, 4 соответственно, то есть A[0] = 6, A[1] = 7 и так далее.
Определите значение переменной c после выполнения следующего фрагмента этой программы (записанного ниже на пяти языках программирования).
| Бейсик | Python |
|---|---|
c = 0 FOR i = 1 TO 9 IF A(i) < A(0) THEN c = c + 1 t = A(i) A(i) = A(0) A(0) = t END IF NEXT i
| c = 0 for i in range(1,10): if A[i] < A[0]: c = c + 1 t = A[i] A[i] = A[0] A[0] = t
|
| Паскаль | Алгоритмический язык |
c := 0; for i := 1 to 9 do if A[i] < A[0] then begin c := c + 1; t := A[i]; A[i] := A[0]; A[0] := t; end; | c := 0 нц для i от 1 до 9 если A[i] < A[0] то c := c + 1 t := A[i] A[i] := A[0] A[0] := t все кц |
| Си++ | |
c = 0; for (i = 1;i < 10;i++) if (A[i] < A[0]) { c++; t = A[i]; A[i] = A[0]; A[0] = t; } }
| |
Программа проходит по массиву, сравнивает A[i] с A[0]. Если A[i] меньше, то они с A[0] меняются местами. Переменная c считает количество таких обменов.
Сначала A[0] = 6. Первое число, меньшее 6, это 3. Теперь A[0] = 3, c = 1.
Следующее число, меньшее 3, это 1. Теперь A[0] = 1, c = 2.
Идём дальше по массиву. Первое число, меньшее 1, это 0. Теперь A[0] = 0, c = 3.
На оставшейся части массива нет чисел меньше 0, цикл заканчивается.

