Алгебраические операции с элементами массива, двумерные массивы
В программе описан одномерный целочисленный массив A с индексами от 0 до 10. Ниже представлен фрагмент этой программы, в котором значения элементов массива сначала задаются, а затем меняются.
| Бейсик | Python |
|---|---|
A(0) = 1 FOR i = 1 TO 10 A(i) = 2 + A[i-1] NEXT i FOR i = 0 TO 5 A(10-i) = A(i)-1 NEXT i
| A[0] = 1 for i in range(1, 11): A[i] = 2 + A[i-1] for i in range(0, 6): A[10-i] = A[i]-1
|
| Паскаль | Алгоритмический язык |
A[0] : = 1; for i : = 1 to 10 do A[i] : = 2 + A[i-1]; for i : = 0 to 5 do begin A[10-i] : = A[i] - 1; end;
| A[0] : = 1 нц для i от 1 до 10 A[i] : = 2 + A[i-1] кц нц для i от 0 до 5 A[10-i] : = A[i] - 1 кц
|
| Си++ | |
A[0] = 1; for (i = 1; i <= 10; i++) { A[i] = 2+A[i-1]; } for (i = 0; i <= 5; i++) { A[10-i] = A[i]-1; } | |
Чему будут равны элементы этого массива?
1) 1 3 5 7 9 10 8 6 4 2 0
2) 1 3 5 7 9 11 13 15 17 19 21
3) 1 3 5 7 9 11 9 7 5 3 1
4) 1 3 5 7 9 11 8 6 4 3 0
Ответ:
В программе описан одномерный целочисленный массив A с индексами от 0 до 10. Ниже представлен фрагмент этой программы, в котором значения элементов массива сначала задаются, а затем меняются.
| Бейсик | Python |
|---|---|
FOR i = 0 TO 10 A(i) = 2 + i NEXT i FOR i = 0 TO 4 A(i) = A(10-i) - 1 A(10-i) = A(i) + 3 NEXT i
|
for i in range(0, 11): A[i] = 2 + i for i in range(0, 5): A[i] = A[10-i] - 1 A[10-i] = A[i] + 3
|
| Паскаль | Алгоритмический язык |
for i : = 0 to 10 do A[i] : = 2 + i; for i : = 0 to 4 do begin A[i]:= A[10-i]-1; A[10-i]:= A[i]+3; end;
|
нц для i от 0 до 10 A[i] : = 2 + i кц нц для i от 0 до 4 A[i]:=A[10-i]-1 A[10-i]:=A[i]+3 кц
|
| Си++ | |
for (i = 0; i <= 10; i++) { A[i] = 2 + i; } for (i = 0; i <= 4; i++) { A[i] = A[10-i] - 1; A[10-i] = A[i]+3; } | |
Чему будут равны элементы этого массива?
1) 11 10 9 8 7 5 6 7 8 9
2) 11 10 9 8 7 7 5 6 7 8 9
3) 11 10 9 8 7 7 10 11 12 13 14
4) 11 10 9 8 7 10 11 12 13 14
Ответ:
В программе описан одномерный целочисленный массив A с индексами от 0 до 10. Ниже представлен фрагмент этой программы, в котором значения элементов массива сначала задаются, а затем меняются.
| Бейсик | Python |
|---|---|
FOR i = 1 TO 10 A(i) = 3*i NEXT i FOR i = 1 TO 10 A(i) = A(i) MOD 3; NEXT i
|
for i in range(0, 11): A[i] = 3*i for i in range(1, 11): A[i] = A[i] % 3
|
| Паскаль | Алгоритмический язык |
for i : = 1 to 10 do A[i] : = 3*i; for i : = 1 to 10 do begin A[i]:= A[i] mod 3; end;
|
нц для i от 1 до 10 A[i] : = 3*i кц нц для i от 1 до 10 A[i]:= mod(A[i], 3) кц
|
| Си++ | |
for (i = 1; i <= 10; i++) { A[i] = 3*i; } for (i = 1; i <= 10; i++) { A[i] = A[i] % 3; } | |
Чему будут равны элементы этого массива?
1) Все элементы будут равны 3.
2) Все элементы будут равны 1.
3) Все элементы будут равны 0.
4) Все элементы будут равны своим индексам.
Ответ:
Значения элементов двумерного массива А были равны 0. Затем значения некоторых элементов были изменены (см. представленный фрагмент программы):
| Бейсик | Python |
|---|---|
n = 0 FOR i = 1 TO 5 FOR j = 1 TO 6-i n = n + 1 A(i,j) = n NEXT j NEXT i
| n = 0 for i in range(1, 6): for j in range(1, 7-i): n += 1 A[i][j] = n
|
| Паскаль | Алгоритмический язык |
n:=0; for i:=1 to 5 do for j:=1 to 6-i do begin n := n + 1; A[i,j] := n; end;
| n:=0 нц для i от 1 до 5 нц для j от 1 до 6-i n := n + 1 A[i,j] := n кц кц
|
| Си++ | |
n = 0; for (i = 1; i <= 5; i++) { for (j = 1; j <= 6-i; j++) { n += 1; A[i][j] = n; } } | |
Какой элемент массива будет иметь в результате максимальное значение?
1) A[1,1]
2) A[1,5]
3) A[5,1]
4) A[5,5]
Ответ:
Значения двух массивов A и B с индексами от 1 до 100 задаются при помощи следующего фрагмента программы:
| Бейсик | Python |
|---|---|
n = 100 FOR i = 1 TO n A(i)=(i-75)*(i-75) NEXT i FOR i = 1 TO n B(101-i)=A(i) NEXT i
| n = 100 for i in range(1, n+1): A[i]=(i-75)*(i-75) for i in range(1, n+1): B[101-i]=A[i]
|
| Паскаль | Алгоритмический язык |
n:=100; for i : = 1 to n do A[i]:=(i-75)*(i-75); for i : = 1 to n do begin B[101-i]:=A[i]; end;
| n:=100 нц для i от 1 до n A[i]:=(i-75)*(i-75) кц нц для i от 1 до n B[101-i]:=A[i] кц
|
| Си++ | |
n = 100; for (i = 1; i <= n; i++) { A[i]=(i-75)*(i-75); } for (i = 1; i <= n; i++) { B[101-i]=A[i]; } | |
Какой элемент массива B будет наибольшим?
1) B[1]
2) B[26]
3) B[75]
4) B[100]
Ответ:
Элементы двухмерного массива A размером NxN первоначально были равны 1000. Затем значения некоторых из них меняют с помощью следующего фрагмента программы:
| Бейсик | Python |
|---|---|
k = 0 FOR i = 1 TO N FOR j = N-i+1 TO N k += 1 A(i,j) = k NEXT j NEXT i
| k = 0 for i in range(1, n+1): for j in range(n-i+1, n+1): k = k + 1 A[i,j] = k
|
| Паскаль | Алгоритмический язык |
k := 0; for i:= 1 to n do for j:=N-i+1 to n do begin k:= k + 1; A[i,j]:= k; end;
| k := 0 нц для i от 1 до n нц для j от n-i+1 до n k:= k + 1 A[i,j]:= k кц кц |
| Си++ | |
k = 0; for (i = 1; i <= n; i++) { for (j = n-i+1; j <= n; j++) { k = k + 1; A[i][j] = k; } } | |
Какой элемент массива в результате будет иметь минимальное значение?
1) A[1,1]
2) A[1,N]
3) A[N,1]
4) A[N,N]
Ответ:
В программе описан одномерный целочисленный массив A с индексами от 0 до 10. Ниже представлен фрагмент этой программы, в котором значения элементов массива сначала задаются, а затем меняются.
| Бейсик | Python |
|---|---|
FOR i = 0 TO 10 A(i) = 2*i NEXT i FOR i = 0 TO 4 A(10-i) = A(i) - 1; A(i) = A(10-i) - 1; NEXT i
|
for i in range(0, 11): A[i] = 2*i for i in range(0, 5): A[10-i] = A[i] - 1 A[i] = A[10-i] - 1
|
| Паскаль | Алгоритмический язык |
for i : = 0 to 10 do A[i] : = 2*i; for i : = 0 to 4 do begin A[10-i]:= A[i] - 1; A[i] : = A[10-i]-1; end;
|
нц для i от 0 до 10 A[i] : = 2*i кц нц для i от 0 до 4 A[10-i]:= A[i] - 1 A[i]:= A[10-i] - 1 кц
|
| Си++ | |
for (i = 0; i <= 10; i++) { A[i] = 2*i; } for (i = 0; n <= 4; i++) { A[10-i] = A[i] - 1; A[i] = A[10-i] - 1; } | |
Чему будут равны элементы этого массива?
1) 0 2 4 6 8 10 12 14 16 18 20
2) 19 17 15 13 11 10 -1 1 3 5 7
3) -2 0 2 4 6 10 7 5 3 1 -1
4) -1 1 3 5 7 9 11 13 15 17 19
Ответ:
В программе описан одномерный целочисленный массив с индексами от 0 до n (т. е. первый элемент имеет индекс 0, последний - индекс n). Ниже представлен фрагмент одной и той же программы, записанный на разных языках программирования, обрабатывающей данный массив:
| Бейсик | Паскаль |
|---|---|
s = n z = A(0) FOR i = 1 TO n IF A(i) = z THEN s = s - 1 NEXT i | s: = n; z: = A[0]; for i: = 1 to n do begin if A[i] = z then s: = s - 1; end |
| Си++ | Алгоритмический язык |
s = n; z = A[0]; for (i = 1; i <= n; i++){ if (A[i] == z) s--; } | s: = n z: = A[0] нц для i от 1 до n если A[i] = z то s: = s - 1 все кц |
| Python | |
s = n z = A[0] for i in range(1, n+1): if A[i] == z: s: -= 1 | |
Чему будет равно значение переменной s после выполнения данной программы, при любых значениях элементов массива?
1) Количеству элементов массива A, больших первого элемента массива
2) Количеству элементов массива A, не превосходящих первого элемента массива
3) Количеству элементов массива A, не равных первому элементу массива
4) Количеству элементов массива A, равных первому элементу массива
Ответ:
В программе описан одномерный целочисленный массив А, в представленном фрагменте программы обрабатываются элементы массива с индексами от 1 до 10.
| Бейсик | Python |
|---|---|
n = 10 FOR i = 1 TO n A (n+1-i) = 2*A(i) NEXT i
| n = 10 for i in range(1, n+1): A [n+1-i] = 2*A[i]
|
| Паскаль | Алгоритмический язык |
n:= 10; for i:=1 to n do A [n+1-i] := 2*A[i];
| n:= 10 нц для i от 1 до n A [n+1-i] := 2*A[i] кц
|
| Си++ | |
n = 10; for (i = 1; i <= n; i++) { A [n+1-i] = 2*A[i]; } | |
Перед началом выполнения фрагмента элементы массива имеют значения соответственно 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, т. е. А[1] = 1; А[2] = 2 и т. д. Укажите значение, которое после выполнения указанного фрагмента программы имеет два или более рассмотренных в этом фрагменте элемента массива. Если таких чисел несколько, укажите наибольшее из них.
1) такого значения нет
2) 10
3) 8
4) 4
Ответ:
В программе описан одномерный целочисленный массив А, в представленном фрагменте программы обрабатываются элементы массива с индексами от 1 до 10.
| Бейсик | Python |
|---|---|
n = 10 FOR i = 1 TO n A (n+1-i) = 2*A(i) NEXT i
| n = 10 for i in range(1, n+1): A [n+1-i] = 2*A[i]
|
| Паскаль | Алгоритмический язык |
n:= 10; for i:=1 to n do A [n+1-i] := 2*A[i];
| n:= 10 нц для i от 1 до n A [n+1-i] := 2*A[i] кц
|
| Си++ | |
n = 10; for (i = 1; i <= n; i++) { A [n+1-i] = 2*A[i]; } | |
Перед началом выполнения фрагмента элементы массива имеют значения соответственно 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, т. е. А[1] = 2; А[2] = 4 и т. д. Укажите значение, которое после выполнения указанного фрагмента программы имеют два или более рассмотренных в этом фрагменте элемента массива. Если таких чисел несколько, укажите наибольшее из них.
1) 8
2) 16
3) 20
4) такого значения нет
Ответ:
Ниже представлен записанный на разных языках программирования фрагмент одной и той же программы. В программе описан одномерный целочисленный массив A, в представленном фрагменте программы обрабатываются элементы массива с индексами от 1 до 10.
| Бейсик | Паскаль |
|---|---|
n = 10 FOR i = 1 ТО n s = A(n + 1 - i) * (n + 1 - i) A(n + 1 - i) = A(i) * (n + 1 - i) A(i) = s NEXT i | n : = 10; for i : = 1 to n do begin s : = A[n + 1 - i] * (n + 1 - i); A[n + 1 - i] : = A[i] * (n + 1 - i); A[i] : = s; end; |
| Си++ | Алгоритмический язык |
n = 10; for (i = 1; i <= n; i++){ s = A[n + 1 - i] * (n + 1 - i); A[n + 1 - i] = A[i] * (n + 1 - i); A[i] = s; } | n : = 10 нц для i от 1 до n s := A[n+1-i]*(n+1-i) A[n+1-i] := A[i]*(n+1-i) A[i] := s кц |
| Python | |
n = 10 for i in range(1, n+1): s = A[n + 1 - i] * (n + 1 - i); A[n + 1 - i] = A[i] * (n + 1 - i); A[i] = s; | |
Перед началом выполнения фрагмента все элементы массива равны 1. Укажите утверждение, которое будет верно после выполнения указанного фрагмента программы при изменении индекса от 1 до 10.
1) значения массива постоянны
2) значения массива сначала возрастают, а потом убывают
3) значения массива возрастают
4) значения массива убывают
Ответ:
Ниже представлен записанный на разных языках программирования фрагмент одной и той же программы. В программе описан одномерный целочисленный массив A, в представленном фрагменте программы обрабатываются элементы массива с индексами от 1 до 10.
| Бейсик | Паскаль |
|---|---|
n = 10 FOR i = 1 ТО n s = A(n + 1 - i) * i A(n + 1 - i) = A(i) * i A(i) = s NEXT i | n : = 10; for i : = 1 to n do begin s : = A[n + 1 - i] * i; A[n + 1 - i] : = A[i] * i; A[i] : = s; end; |
| Си++ | Алгоритмический язык |
n = 10; for (i = 1; i <= n; i++){ s = A[n + 1 - i] * i; A[n + 1 - i] = A[i] * i; A[i] = s; } | n : = 10 нц для i от 1 до n s : = A[n + 1 - i] * i A[n + 1 - i] : = A[i] * i A[i] : = s кц |
| Python | |
n = 10 for i in range(1, n+1): s = A[n + 1 - i] * i A[n + 1 - i] = A[i] * i A[i] = s | |
Перед началом выполнения фрагмента все элементы массива равны 1. Укажите утверждение, которое будет верно после выполнения указанного фрагмента программы при изменении индекса от 1 до 10.
1) значения массива возрастают
2) значения массива убывают
3) значения массива постоянны
4) значения массива сначала возрастают, а потом убывают
Ответ:
Ниже представлен записанный на разных языках программирования фрагмент одной и той же программы. В программе описан одномерный целочисленный массив А, в представленном фрагменте программы обрабатываются элементы массива с индексами от 1 до 10.
| Бейсик | Паскаль |
|---|---|
n = 10 FOR i = 1 ТО n А (n+1-i) = 2*A(i) NEXT i
| n := 10; for i := 1 to n do begin A [n+1-i] := 2*A[i]; end;
|
| Си++ | Алгоритмический язык |
n = 10; for (i = 1; i <= n; i++) { A [n+1-i] = 2*A[i]; } | n : = 10 нц для i от 1 до n A[n+1-i] := 2*A[i] кц |
| Python | |
n = 10 for i in range(1, n+1): A [n+1-i] = 2*A[i] | |
Перед началом выполнения фрагмента элементы массива имеют значения соответственно
1, 2, 4, 8, 16, 32, 64, 128, 256, 512, т. е. A[k] = 2k-1, k = 1, ..., 10.
Укажите значение, которое после выполнения указанного фрагмента программы имеют два или более рассмотренных в этом фрагменте элемента массива. Если таких чисел несколько, укажите наименьшее из них.
1) такого значения нет
2) 2
3) 8
4) 4
Ответ:
Ниже представлен записанный на разных языках программирования фрагмент одной и той же программы. В программе описан одномерный целочисленный массив А, в представленном фрагменте программы обрабатываются элементы массива с индексами от 1 до 10.
| Бейсик | Паскаль |
|---|---|
n = 10 FOR i = 1 ТО n A (n+1-i) = 2*A(i) NEXT i
| n := 10; for i := 1 to n do begin A [n+1-i] := 2*A[i]; end;
|
| Си++ | Алгоритмический язык |
n = 10; for (i = 1; i <= n; i++) { A [n+1-i] = 2*A[i]; } | n : = 10 нц для i от 1 до n A[n+1-i] := 2*A[i] кц |
| Python | |
n = 10 for i in range(1, n+1): A [n+1-i] = 2*A[i] | |
Перед началом выполнения фрагмента элементы массива имеют значения соответственно
1, 2, 4, 8, 16, 32, 64, 128, 256, 512, т. е. A[k] = 2k-1, k = 1, ..., 10.
Укажите значение, которое после выполнения указанного фрагмента программы имеют два или более рассмотренных в этом фрагменте элемента массива. Если таких чисел несколько, укажите наибольшее из них.
1) такого значения нет
2) 8
3) 32
4) 128
Ответ:
Ниже приведён фрагмент программы, записанный на четырёх языках программирования. Массив A двумерный; в программе рассматривается его фрагмент, соответствующий значениям индексов от 1 до n.
| Бейсик | Паскаль |
|---|---|
FOR i = 1 TO n c = A(i,i) A(i,i) = A(i,n–i+1) A(i,n–i+1) = c NEXT i | for i := 1 to n do begin c := A[i,i]; A[i,i] := A[i,n–i+1]; A[i,n–i+1] := c end; |
| Си++ | Алгоритмический язык |
for (i = 1; i <= n; i++) { c = A[i][i]; A[i][i] = A[i][n-i+1]; A[i][n-i+1] = c; } | нц для i от 1 до n c := A[i,i] A[i,i] := A[i,n–i+1] A[i,n–i+1] := c кц |
| Python | |
for i in range(1, n+1): c = A[i,i] A[i,i] = A[i,n–i+1] A[i,n–i+1] = c | |
Представим рассмотренный фрагмент массива в виде квадратной таблицы, в которой для элемента массива A[i, j] величина i является номером строки, а величина j — номером столбца, в котором расположен элемент. Тогда данный алгоритм меняет местами
1) два столбца в таблице
2) две строки в таблице
3) элементы двух диагоналей таблицы
4) элементы диагонали и строки таблицы
Ответ:
Ниже приведён фрагмент программы, записанный на четырёх языках программирования. Массив A целочисленный двумерный. В программе рассмотрен фрагмент массива, соответствующий значениям индексов от 1 до n; n >= 3.
| Бейсик | Паскаль |
|---|---|
FOR i = n TO 1 STEP -1 FOR j = n TO 1 STEP -1 A(i,j) = i-j NEXT j NEXT i | for i := n downto 1 do for j := n downto 1 do A[i,j] := i-j; |
| Си++ | Алгоритмический язык |
for (i = n; i >= 1; i--) { for (j = n; j >= 1; j--) { A[i][j] = i-j; } } | нц для i от n до 1 шаг -1 нц для j от n до 1 шаг -1 A[i,j] := i-j кц кц |
| Python | |
for i in range(n, 0, -1): for j in range(n, 0, -1): A[i,j] = i-j | |
Чему будет равно максимальное из значений элементов рассмотренного фрагмента массива посе выполнения фрагмента программы?
1) n – 1
2) 1– n
3) n
4) 1
Ответ: