Алгоритмы с использованием условного оператора
Дан фрагмент программы, обрабатывающий массив А из 10 элементов:
| Бейсик | Python |
|---|---|
j = 1 FOR i = 1 TO 10 IF A(i) = A(j) THEN j = i ENDIF NEXT i s = j
| j = 1 for i in range(1, 11): if A[i] == A[j]: j = i s = j |
| Алгоритмический язык | Паскаль |
j := 1 нц для i от 1 до 10 если A[i] = A[j] то j := i все кц s := j | j := 1; for i := 1 to 10 do if A[i] = A[j] then j := i; s := j; |
| Си++ | |
j = 1; for (i = 1; i <= 10; i++) if (A[i] == A[j]) { j = i; } s = j; | |
Чему будет равно значение переменной s после выполнения этого алгоритма?
1) 1
2) 10
3) индексу элемента, равного первому, и имеющему наибольший индекс
4) индексу элемента, равного последнему, и имеющему наименьший индекс
Ответ:
Дан фрагмент программы, обрабатывающий двухмерный массив A размером nxn.
| Бейсик | Python |
|---|---|
FOR i = 1 TO n-1 FOR j = i+1 TO n IF A[i,1] < A[j,1] THEN k=A(i,1) A(i,1)=A(j,1) A(j,1)=k NEXT j NEXT i
| for i in range(1, n): for j in range(i+1, n+1): if A[i,1] < A[j,1]: k=A[i,1] A[i,1]=A[j,1] A[j,1]=k
|
| Паскаль | Алгоритмический язык |
for i:= 1 to n-1 do for j:=i+1 to n do if A[i,1] < A[j,1] then begin k:=A[i,1]; A[i,1]:=A[j,1]; A[j,1]:=k; end;
| нц для i от 1 до n-1 нц для j от i+1 до n если A[i,1] < A[j,1] то k:=A[i,1] A[i,1]:=A[j,1] A[j,1]:=k кц кц |
| Си++ | |
for (i = 1; i <= n-1; i++) { for (j = i+1; j <= n; j++) { if (A[i][1] < A[j][1]){ k=A[i][1]; A[i][1]=A[j][1]; A[j][1]=k; } } } | |
В этом фрагменте:
1) упорядочивается первая строка массива по убыванию
2) упорядочивается первый столбец массива по убыванию
3) заменяются элементы k-ого столбца таблицы
4) заменяются элементы k-ой строки таблицы
Ответ:
В программе описан одномерный целочисленный массив A с индексами от 1 до 10. Ниже представлен фрагмент этой программы, в котором значения элементов массива сначала задаются, а затем меняются.
| Бейсик | Python |
|---|---|
FOR i = 1 TO 10 A(i) = 5*i NEXT i FOR i = 1 TO 10 k = A(i) - 2 A(10-i+1) = k NEXT i
|
for i in range(1, 11): A[i] = 5*i for i in range(1, 11): k = A[i]-2 A[10-i+1]=k
|
| Паскаль | Алгоритмический язык |
for i : = 1 to 10 do A[i] : = 5*i; for i : = 1 to 10 do begin k:=A[i]-2; A[10-i+1]:=k; end;
|
нц для i от 1 до 10 A[i] : = 5*i кц нц для i от 1 до 10 k:=A[i]-2 A[10-i+1]:=k кц
|
| Си++ | |
for (i = 1; i <= 10; i++) { A[i] = 5*i; } for (i = 1; i <= 10; i++) { k=A[i]-2; A[10-i+1]=k; } | |
Чему будут равны элементы этого массива?
1) 1 6 11 16 21 23 18 13 8 3
2) 3 8 13 18 23 28 33 38 43 48
3) 48 43 38 33 28 23 18 13 8 3
4) 1 6 11 16 21 26 31 36 41 46
Ответ:
В программе описан одномерный целочисленный массив с индексами от 0 до n. Ниже представлен фрагмент одной и той же программы, записанный на разных языках программирования, обрабатывающей данный массив:
| Бейсик | Паскаль |
|---|---|
s = 0 z = A(n) FOR i = 0 TO n IF A(i) > z THEN s = s + 1 NEXT i | s: = 0; z: = A[n]; for i: = 0 to n do begin if A[i] > z then s: = s + 1; end |
| Си++ | Алгоритмический язык |
s = 0; z = A[n]; for (i = 0; i <= n; i++){ if (A[i] > z) s++; } | s: = 0 z: = A[n] нц для i от 0 до n если A[i] > z то s: = s + 1 все кц |
| Python | |
s = 0 z = A[n] for i in range(0, n+1): if A[i] > z: s = s + 1; | |
Чему будет равно значение переменной s после выполнения данной программы, при любых значениях элементов массива?
1) Минимальному элементу в массиве A
2) Количеству элементов массива A, больших последнего элемента массива
3) Индексу последнего элемента массива А, который меньше A[0]
4) Количеству элементов массива A, меньших последнего элемента массива
Ответ:
Ниже приведён фрагмент программы, записанный на четырёх языках программирования.
Массив A одномерный; в программе рассматривается его фрагмент, соответствующий значениям индекса от 1 до n.
| Бейсик | Паскаль |
|---|---|
J = 1 FOR I = 1 TO n IF A(I) < A(J) THEN J =I NEXT I s = J | j :=1; for i: = 1 to n do begin if A[i] < A[j] then j := i end; s := j; |
| Си++ | Алгоритмический язык |
j = 1; for (i = 1; i <= n; i++) { if (A[i] < A[j]) { j = i; } } s = j; | j := 1 нц для i от 1 до n если A[i] < A[j] то j := i все кц s := j |
| Python | |
j = 1 for i in range(1, n+1): if A[i] < A[j]: j = i s = j | |
Чему будет равно значение переменной s после выполнения данного фрагмента программы?
1) минимальному элементу в массиве A
2) индексу минимального элемента в массиве A (наименьшему из таких индексов, если минимальных элементов несколько)
3) индексу минимального элемента в массиве A (наибольшему из таких индексов, если минимальных элементов несколько)
4) количеству элементов, равных минимальному в массиве A
Ответ:
Ниже приведён фрагмент программы, записанный на четырёх языках программирования.
Массив А одномерный; в программе рассматривается его фрагмент, соответствующий значениям индекса от 1 до n.
Бейсик | Паскаль |
|---|---|
J = 1 FOR I = 1 to n IF A(I) < A(J) THEN J = I NEXT I s = J | j := 1; for i := 1 to n do begin if A[i] < A[j] then j := i end; s := j; |
Си++ | Алгоритмический язык | j = 1; for (i = 1; i <= n; i++) { if (A[i] < A[j]){ j = i; } } s = j; | j := 1 нц для i от 1 до n если A[i] < A[j] то j := i все кц s := j |
| Python | |
j = 1 for i in range(1, n+1): if A[i] < A[j]: j = i s = j | |
Чему будет равно значение переменной s после выполнения данного фрагмента программы?
1) индексу минимального элемента в массиве А (наименьшему из таких индексов, если минимальных элементов несколько)
2) минимальному элементу в массиве А
3) количеству элементов, равных минимальному в массиве А
4) индексу минимального элемента в массиве А (наибольшему из таких индексов, если минимальных элементов несколько)
Ответ:
Ниже приведён фрагмент программы, записанный на четырёх языках программирования. Массив A одномерный; в программе рассматривается его фрагмент, соответствующий значениям индекса от 1 до n.
| Бейсик | Паскаль |
|---|---|
s = 0 FOR i = 1 TO n IF A(i)<0 THEN s = s – A(i) NEXT i | s := 0; for i := 1 to n do begin if A[i]<0 then s := s – A[i] end;
|
| Си++ | Алгоритмический язык |
s = 0; for (i = 1; i <= n; i++) { if (A[i] < 0) { s = s - A[i]; } }
| s := 0 нц для i от 1 до n если A[i]<0 то s := s – A[i] все кц |
| Python | |
s = 0 for i in range(1, n+1): if A[i]<0: s = s - A[i] | |
Чему будет равно значение переменной s после выполнения данного фрагмента программы?
1) модулю суммы всех отрицательных элементов массива A
2) количеству отрицательных элементов в массиве A
3) сумме всех отрицательных элементов массива A
4) среднему арифметическому всех отрицательных элементов в массиве A
Ответ: