В программе используется одномерный целочисленный массив А с индексами от 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[1] = 6. По-прежнему A[9] = 6, но c = 1.
Следующее число, не меньшее 5, это A[3] = 8. Теперь A[9] = 8, c = 2.
Идём дальше по массиву. Первое число, не меньшее 8, это A[8] = 9. A[9] = 9, c = 3.
На оставшейся части массива нет чисел не меньше 9, цикл заканчивается.

