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.