Слайд 2Задача 1.
ИНФОРМАТИКА
2014г. Кирсанов Илья Андреевич ©
В программе описан одномерный целочисленный массив с
индексами от 0 до 10. В приведенном ниже фрагменте программы массив сначала заполняется, а потом изменяется:
for i : = 0 to 10 do
A[i] : = i;
for i : = 1 to 11 do
A[i-1] : = A[11-i];
Чему будут равны элементы этого массива?
1) 10 9 8 7 6 5 4 3 2 1 0
2) 11 10 9 8 7 6 5 4 3 2 1
3) 10 9 8 7 6 5 6 7 8 9 10
4) 11 10 9 8 7 6 7 8 9 10 11
Слайд 3Задача 1.
ИНФОРМАТИКА
2014г. Кирсанов Илья Андреевич ©
Решение.
for i : = 0 to
10 do A[i] : = i; -элементы массива равны соответственно:
A[0]=0
A[1]=1
…………
A[10]=10
for i : = 1 to 11 do A[i-1] : = A[11-i]; -элементы массива равны соответственно:
Ответ 3
Слайд 4Задача 2.
ИНФОРМАТИКА
2014г. Кирсанов Илья Андреевич ©
Дан фрагмент программы, обрабатывающей двухмерный массив A[1..5,1..4]:
k:=4;
for
m:=1 to 4 do begin
k:=k+1;
for n:=1 to 5 do begin
k:=m-k;
A[n,m]:=n*n+m*m-2*k;
end;
end;
Чему будет равно значение A[3,1]?
1) 18
2) 19
3) 20
4) 21
Слайд 5Задача 2.
ИНФОРМАТИКА
2014г. Кирсанов Илья Андреевич ©
Решение.
k:=4;
for m:=1 to 4 do begin
k:=k+1;
for
n:=1 to 5 do begin
k:=m-k;
A[n,m]:=n*n+m*m-2*k;
end;
end;
Составим таблицу:
Ответ 1
Слайд 6Задача 3.
ИНФОРМАТИКА
2014г. Кирсанов Илья Андреевич ©
В программе описан одномерный целочисленный массив с
индексами от 0 до 12. Ниже представлен записанный на разных языках программирования фрагмент одной и той же программы, обрабатывающей данный массив:
s := 0;
n := 12;
for i:=0 to n do begin
if A[n–i] – A[i] = A[i] then
s:=s+3*A[i];
end;
В начале выполнения этого фрагмента в массиве находились числа 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24 т. е. A[0] = 0, A[1] = 2 и т. д. Чему будет равно значение переменной s после выполнения данной программы?
1) 12
2) 24
3) 30
4) 156
Слайд 7Тогда
Задача 3.
ИНФОРМАТИКА
2014г. Кирсанов Илья Андреевич ©
Решение.
Алгоритм вычисляет разницу между двумя элементами
- последним и первым, затем предпоследний и второй и так далее. Если разница совпадает со значением текущего элемента A[i], то переменная S меняется по правилу:
s:=s+3*A[i];
Если найти все такие разницы, то окажется, что только A[12-4]-A[4]=A[4], то есть условие соблюдается лишь при i=4.
16-8=8.
Тогда S будет равно:
S:=0+3*8=24
Ответ 2
Слайд 8Вопросы.
ИНФОРМАТИКА
2014г. Кирсанов Илья Андреевич ©
Ниже приведён фрагмент программы, записанный на четырёх языках
программирования.
Массив А одномерный; в программе рассматривается его фрагмент, соответствующий значениям индекса от 1 до n.
j := 1;
for i := 1 to n do
begin
if A[i] < A[j] then
j := i
end;
s := j;
Чему будет равно значение переменной s после выполнения данного фрагмента программы?
1) индексу минимального элемента в массиве А (наименьшему из таких индексов, если минимальных элементов несколько)
2) минимальному элементу в массиве А
3) количеству элементов, равных минимальному в массиве А
4) индексу минимального элемента в массиве А (наибольшему из таких индексов, если минимальных элементов несколько)
Слайд 9Вопросы.
ИНФОРМАТИКА
2014г. Кирсанов Илья Андреевич ©
Значения элементов двумерного массива А размером 5x5 задаются
с помощью вложенного цикла в представленном фрагменте программы:
for i:=1 tо 5 do
for j:=1 tо 5 do begin
A[i,j] := i*j;
end;
Сколько элементов массива будут иметь значения больше 10?
1) 12
2) 8
3) 10
4) 4
Ответ 2
Слайд 10Вопросы.
ИНФОРМАТИКА
2014г. Кирсанов Илья Андреевич ©
Элементы двухмерного массива A размером 10x10 первоначально были
равны 1. Затем значения некоторых из них меняют с помощью следующего фрагмента программы:
for n:=1 to 4 do
for k:=1 to n+1 do begin
A[n,k]:=A[n,k]-1;
A[n,k+1]:=A[n,k]-1;
end;
Сколько элементов массива в результате будут равны 0?
1) 0
2) 4
3) 8
4) 16
Ответ 2