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

