Алгоритм (10 класс)

advertisement
Алгоритмизация и основы программирования
(10 класс)
1. Запишите порядок команд в алгоритме получения из числа 11 число 13,
содержащие 5 команд, указывая лишь номера команд:
команда 1: умножь на 3;
команда 2: вычти 2.
Например, алгоритм получения из числа 2 число 8: 12122.
2. Определите значение переменной b после выполнения следующего фрагмента
алгоритма, представленного в виде блок-схемы. В ответ напишите только число.
3. Какое значение переменной i появится на экране в результате выполнения
предложенного алгоритма, если изначально a=b-3=c+4=6?
4. Дана блок-схема алгоритма. Определите и укажите в ответе, какое значение
переменной S будет на выходе из него, если на вход подали значение x=36.
1
5. Дана блок-схема алгоритма. Определите значение целочисленной переменной k
после его выполнения. В ответе укажите целое число.
6. Дана схема алгоритма. Определите и укажите в ответе, какое значение переменной i
будет на выходе из него, если на вход подали значения a=7 и b=9.
2
7. Дана схема алгоритма. На вход алгоритму подали значение a=24. Определите, что
выведет алгоритм.
8. Дана блок-схема алгоритма обработки одномерного целочисленного массива m,
содержащего 18 элементов. Перед обработкой массив содержал следующее значения:
m=[1,2,3,3,2,1,1,2,3,3,2,1,1,2,3,3,2,1]
Сколько элементов массива не изменяют свои значения после обработки? Индексация
элементов массива начинается с единицы. В ответе укажите число. (Операция mod
вычисляет остаток от деления первого аргумента на второй.)
3
9. Дан фрагмент блок-схемы алгоритма обработки одномерного массива. Найдите
элементы массива после окончания работы алгоритма, если на вход подали массив B,
приведенный ниже. Индексация элементов массива начинается с единицы. В ответе
запишите через пробел получившиеся элементы массива.
B [6, 11, 16, 21, 26, 24, 19, 14, 9, 4, 1, 0, -4, 5, 11, -10, 17, 5, 19, 23]
10. Среди всех натуральных четырёхзначных чисел подсчитать количество таких, сумма
квадратов цифр, которых кратна двум или трём. Ответ записать целым числом.
11. Найдите количество пар х, y в натуральных числах, которые удовлетворяют условию:
22х+14у=8456.
4
12. В программе описан одномерный целочисленный массив с индексами от 0 до 10. В
приведенном ниже фрагменте программы массив сначала заполняется, а потом
изменяется:
for i:=0 to 10 do
A[i]:= i + 1;
for i:=0 to 10 do
A[i]:= A[10-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) 11 10 9 8 7 6 7 8 9 10 11
4) 10 9 8 7 6 5 6 7 8 9 10
13. В программе описан одномерный целочисленный массив с индексами от 0 до 10. В
приведенном ниже фрагменте программы массив сначала заполняется, а потом
изменяется:
for i:=0 to 10 do
A[i]:= i - 1;
for i:=1 to 10 do
A[i-1]:= A[i];
A[10] := 10;
Как изменяются элементы этого массива?
1) все элементы, кроме последнего, окажутся равны между собой
2) все элементы окажутся равны своим индексам
3) все элементы, кроме последнего, сдвигаются на один элемент вправо
4) все элементы, кроме последнего, уменьшаются на единицу
14. В программе описан одномерный целочисленный массив с индексами от 0 до 9 и
целочисленные переменные k и i. В приведенном ниже фрагменте программы
массив сначала заполняется, а потом изменяется:
for i:=0 to 9 do A[i]:=i+1;
k:=A[9];
for i:=9 downto 1 do
A[i]:=A[i-1];
A[0]:=k;
Чему будут равны элементы этого массива?
1) 10 3 4 5 6 7 8 9 10 10
2) 10 1 2 3 4 5 6 7 8 9
3) 10 1 1 1 1 1 1 1 1 1
4) 10 10 10 10 10 10 10 10 10 10
15. В программе описан одномерный целочисленный массив с индексами от 0 до 100.
Ниже представлен фрагмент программы, обрабатывающей данный массив:
n:= 100;
for i:=0 to n do A[i]:=i;
for i:=1 to n do begin
A[i]:= A[i]-A[i-1];
end;
5
s:=A[90];
Укажите значение, которое после выполнения указанного фрагмента программы
будет записано в переменную s.
1) 0
2) 30
3) 45
4) 550
16. Определите, что будет напечатано в результате работы следующего фрагмента
программы:
var n, s: integer;
begin
n := 1;
s := 0;
while n <= 101 do begin
s := s + 7;
n := n + 1
end;
write(s)
end.
17. Определите, что будет напечатано в результате работы следующего фрагмента
программы:
var n, s: integer;
begin
n:= 0;
s:= 0;
while s <= 365 do begin
s:= s + 36;
n:= n + 10
end;
write(n)
end.
18) Дан целочисленный массив из 30 элементов. Элементы массива могут принимать
целые значения от 0 до 100 – баллы учащихся выпускного класса за итоговый тест по
информатике. Для получения положительной оценки за тест требовалось набрать не
менее 20 баллов. Опишите алгоритм, который находит и выводит минимальный балл
среди учащихся, получивших за тест положительную оценку. Известно, что в классе
хотя бы один учащийся получил за тест положительную оценку.
19) Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0
до 100. Опишите алгоритм, позволяющий найти и вывести произведение элементов массива, которые
имеют чётное значение и не оканчиваются на 0. Гарантируется, что в исходном массиве есть хотя бы
один элемент, значение которого чётно и не оканчиваются на 0.
20) Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0
до 100. Опишите алгоритм, позволяющий найти и вывести произведение двузначных элементов
массива, которые не делятся на 6. Гарантируется, что в исходном массиве есть хотя бы один такой
элемент.
6
Ответ: 1) 22212, 2) b =1, 3) i=9, 4) s=6, 5) k=7, 6) i=3, 7) 4, 6, 8, 8)5
9)18 33 48 63 78 72 57 42 27 12 3 0 -12 15 33 -30 51 15 57 69, 10)6216,
11) 54, 12) 3, 13) 2, 14) 2, 15) 3, 16) 707, 17) 110
Ответы:12.А12(12,13,39,69)В5(15,24)
18) min
:= 100; { не забыть начальные условия! }
for i:=1 to N do
if (a[i] >= 20) and (a[i] < min) then
min := a[i];
writeln ( min );
19) var
a: array [1..N] of longint;
і, j, p: longint;
begin
for і:=1 to N do readln(a[i]);
p:= 1;
for i:=1 to N do
if (a[i] mod 2 = 0) and (a[i] mod 10 <> 0) then
p:= p*a[i];
writeln(p)
end.
20) const
N=30;
var a: array [1..N] of longint;
і, j, p: longint;
begin
for і:=1 to N do readln(a[i]);
p:= 1;
for i:=1 to N do
if (10 <= a[i]) and (a[i] <= 99) and
(a[i] mod 6 <> 0) then
p:= p*a[i];
writeln(p)
end.
7
Download