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

