Преобразование пройденных элементов массива
Пройти тестирование по этим заданиям
Вернуться к каталогу заданий
Версия для печати и копирования в MS Word
В программе используется фрагмент одномерного целочисленного массива A с индексами от 1 до 10. Значения элементов равны 7; 3; 4; 8; 6; 9; 5; 2; 0; 1 соответственно, т. е. A[1] = 7; A[2] = 3 и т. д.
Определите значение переменной j после выполнения следующего фрагмента программы, записанного ниже на разных языках программирования.
| Бейсик | Паскаль |
|---|---|
j = 0 FOR k = 2 TO 10 IF A(k) <= A(1) THEN A(1) = A(k) j = j + k END IF NEXT k
| j := 0; for k := 2 to 10 do begin if A[k] <= A[1] then begin A[1] := A[k]; j := j + k end end;
|
| Си++ | Алгоритмический язык |
j = 0; for (k = 2; k<= 10; k++) { if (A[k] <= A[1]) { A[1] = A[k]; j = j + k; } } | j := 0 нц для k от 2 до 10 если A[k] <= A[1] то A[1] := A[k] j := j+k все кц |
| Python | |
j = 0 for k in range(2, 11): if A[k] <= A[1]: A[1] = A[k] j = j + k | |
Значения элементов фрагментов двух массивов А и В размером 1 х 100 задаются с помощью следующего фрагмента программы:
| Бейсик | Python |
|---|---|
FOR i = 1 TO 100 A(i) = 50 - i NEXT i FOR i = 1 TO 100 B(i) = A(i) + 49; NEXT i
|
for i in range(1, 101): A[i] = 50 - i for i in range(1, 101): B[i] = A[i] + 49
|
| Паскаль | Алгоритмический язык |
for i : = 1 to 100 do A[i] : = 50 - i; for i : = 1 to 100 do begin B[i]:= A[i] + 49; end;
|
нц для i от 1 до 100 A[i] : = 50 - i кц нц для i от 1 до 100 B[i]:=A[i] + 49 кц
|
| Си++ | |
for (i = 1; i <= 100; i++) { A[i] = 50 - i; } for (i = 1; i <= 100; i++) { B[i] = A[i] + 49; } | |
Сколько элементов фрагмента массива В будут иметь отрицательные значения?
Значения двух массивов A[1..100] и B[1..100] задаются с помощью следующего фрагмента программы:
| Бейсик | Python |
|---|---|
FOR n = 1 TO 100 A(n) = n - 10 NEXT n FOR n = 1 TO 100 B(n) = A(n)*n; NEXT n
|
for n in range(1, 101): A[n] = n - 10 for n in range(1, 101): B[n] = A[n]*n
|
| Паскаль | Алгоритмический язык |
for n : = 1 to 100 do A[n] : = n - 10; for n : = 1 to 100 do begin B[n]:= A[n]*n; end;
|
нц для n от 1 до 100 A[n] : = n - 10 кц нц для n от 1 до 100 B[n]:=A[n]*n кц
|
| Си++ | |
for (n = 1; n <= 100; n++) { A[n] = n - 10; } for (n = 1; n <= 100; n++) { B[n] = A[n]*n; } | |
Сколько элементов массива B будут иметь положительные значения?
Примечание. Нуль является ни положительным, ни отрицательным числом.
Значения двух массивов A и B с индексами от 1 до 100 задаются при помощи следующего фрагмента программы:
| Бейсик | Python |
|---|---|
FOR i = 1 TO 100 A(i) = i*i NEXT i FOR i = 1 TO 100 B(i) = A(i)-100 NEXT i
|
for i in range(1, 101): A[i] = i*i for i in range(1, 101): B[i] = A[i]-100
|
| Паскаль | Алгоритмический язык |
for i : = 1 to 100 do A[i] : = i*i; for i : = 1 to 100 do begin B[i] : = A[i]-100; end;
|
нц для i от 1 до 100 A[i] : = i*i кц нц для i от 1 до 100 B[i] : = A[i]-100 кц
|
| Си++ | |
for (i = 1; i <= 100; i++) { A[i] = i*i; } for (i = 1; i <= 100; i++) { B[i] = A[i]-100; } | |
Сколько положительных значений будет в массиве B?
Ниже приведён фрагмент программы, записанный на четырёх языках программирования. Массив A одномерный; в программе рассматривается его фрагмент, соответствующий значениям индекса от 0 до n.
| Бейсик | Паскаль |
|---|---|
n = 10 FOR i = 0 TO n K = A(i) A(K) = 0 NEXT i | n:=10; for i:=0 to n do begin K := A[i]; A[K] := 0; end;
|
| Си++ | Алгоритмический язык |
n=10; for (i = 0; i <= n; i++){ K = A[i]; A[K] = 0; }
| n:=10 нц для i от 0 до n K := A[i] A[K] := 0 кц |
| Python | |
n = 10 for i in range(0, n+1): K = A[i]; A[K] = 0 | |
В начале выполнения этого фрагмента в массиве находились числа 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, т. е. A[0] = 10, A[1] = 9 и т. д. Сколько элементов массива после выполнения программы будут иметь ненулевые значения?
Пройти тестирование по этим заданиям

