?>
2.Требуется описать массив А из 10 целочисленных элементов. Каждый элемент — случайное целое число от 0 до 100. Из предложенных вариантов выберите правильные варианты описания массива А. a. var A: array [1..10] of integer; b. var A: array [0..100] of integer; c. const A=array (1, 10, 20, 30, 40, 50, 60, 70, 80, 100) of integer; d. var A: array [0..9] of integer; e. var A = array [1..10] of integer; f. var A: array [1.10] integer; 3. Дан фрагмент программы: Впишите пропущенные числовые значения элементов массива: A[1]:=1; A[2]:=1; for i:=3 to 7 do A[i]:=A[i-1]+ A[i-2]; A[1]=1; A[2]=1; A[3]= ; A[4]= ; A[5]= ; A[6]= ; A[7] =13 4. Дан фрагмент программы, который в массиве из 10 случайных целых чисел от 1 до 100 находит элемент с максимальным значением. Если таких элементов несколько, то программа должна вывести последний из них. Заполните пропуски в программе, выбрав правильные ответы из списка.m:= [0 / 1 / 100]; for i:= 1 to 10 do if A[i] [<, <=, >, >=, <>] A[m] then [A[i]:=m; m:= A[i]; i:=m; m:=i]; writeln([A[max] / A[m] / max / m /); 5. Дан фрагмент программы, который находит произведение элементов массива А. Дополните программу: For x:=1 to n do ; P :=0; P :=A[1]; P:=1; P := A * P; P:= A[x] *A[x+1] P:=P * A[x]; 6. Дан массив из 10 целых чисел. Установите соответствие между требованием задачи и фрагментом программы на языке Pascal. ответ записать в формате, например , а-е…. a. t:=0; for i:=1 to 10 do if A[i] mod 2=1 then t:=t+a[i]; b. t:=0; for i:=1 to 10 do if A[i]>=0 then t:=t+a[i]; c. t:=10; for i:=1 to 10 do if A[i]<0 then t:=t-1; d. t:=0; for i:=1 to 10 do if i mod 2=1 then t:=t+1; e. Найдите количество неотрицательных элементов в массиве. f. Найдите количество нечетных элементов в массиве. g. Найдите сумму элементов массива, стоящих на нечетных местах. h. Найдите сумму неотрицательных элементов массива. 7. Необходимо заполнить массив К квадратами чисел от 1 до 100 и вывести его на экран. Расположите строки программы по порядку. В ответе записать номера строк по порядку 1. const n=100; 2. K[i]:= i* i; 3. var K: array [1..n] of integer; 4. begin 5. end 6. program N1; 7. for i:=1 to n do begin 8. write(K[i], ' ') 9. i: integer; 10. end.
Ответы
a. var A: array [1..10] of integer; - этот вариант правильный, так как он описывает массив А, состоящий из 10 элементов с индексами от 1 до 10.
b. var A: array [0..100] of integer; - этот вариант неправильный, так как он описывает массив А, состоящий из 101 элемента с индексами от 0 до 100, а не из 10 элементов.
c. const A=array (1, 10, 20, 30, 40, 50, 60, 70, 80, 100) of integer; - этот вариант неправильный, так как он описывает константный массив А с заданными значениями, а не случайными числами.
d. var A: array [0..9] of integer; - этот вариант правильный, так как он описывает массив А, состоящий из 10 элементов с индексами от 0 до 9.
e. var A = array [1..10] of integer; - этот вариант неправильный, так как он использован неверный синтаксис для объявления массива.
f. var A: array [1.10] integer; - этот вариант неправильный, так как он использован неверный синтаксис для объявления массива.
Таким образом, правильные варианты описания массива А из 10 целочисленных элементов - a. var A: array [1..10] of integer; и d. var A: array [0..9] of integer;.
------------------------------------------------------------------------------------------------------------------
В фрагменте программы, элементы массива А заполняются по следующему алгоритму:
A[1]:=1;
A[2]:=1;
for i:=3 to 7 do
A[i]:=A[i-1]+ A[i-2];
После выполнения данного фрагмента программы, значения элементов массива будут следующими:
A[1]=1;
A[2]=1;
A[3]=2;
A[4]=3;
A[5]=5;
A[6]=8;
A[7]=13;
------------------------------------------------------------------------------------------------------------------
В данном фрагменте программы на языке Pascal, который находит элемент с максимальным значением в массиве из 10 случайных целых чисел от 1 до 100, заполнив пропуски, получится следующее:
m:= 0;
for i:= 1 to 10 do
if A[i] > m then
m:= A[i];
writeln(m);
------------------------------------------------------------------------------------------------------------------
Для нахождения произведения элементов массива А, можно использовать следующий фрагмент программы:
P := 1; // Изначально произведение равно 1
for x:=1 to n do
P := A[x]*P;
------------------------------------------------------------------------------------------------------------------
Соответствие между требованиями задачи и фрагментом программы на языке Pascal можно определить следующим образом:
a. t:=0;
for i:=1 to 10 do
if A[i] mod 2=1 then
t:=t+A[i];
Этот фрагмент программы находит сумму нечетных элементов массива.
b. t:=0;
for i:=1 to 10 do
if A[i]>=0 then
t:=t+A[i];
Этот фрагмент программы находит сумму неотрицательных элементов массива.
c. t:=10;
for i:=1 to 10 do
if A[i]<0 then
t:=t-1;
Этот фрагмент программы уменьшает значение t на 1 для каждого отрицательного элемента массива.
d. t:=0;
for i:=1 to 10 do
if i mod 2=1 then
t:=t+1;
Этот фрагмент программы находит количество элементов массива с нечетными индексами.
Ответ: e. Найдите количество неотрицательных элементов в массиве.
------------------------------------------------------------------------------------------------------------------
Для заполнения массива К квадратами чисел от 1 до 100 и вывода его на экран, строки программы должны быть расположены следующим образом:
1. const n=100;
2. var K: array [1..n] of integer;
3. for i:=1 to n do
K[i]:= i* i;
4. begin
5. for i:=1 to n do
write(K[i], ' ');
6. end
7. program N1;
8. var i: integer;
Таким образом, номера строк программы в порядке выполнения: 1, 2, 8, 4, 3, 5, 6.