- Учителю
- Контрольная работа по теме «Основы алгоритмизации». 9 класс.
Контрольная работа по теме «Основы алгоритмизации». 9 класс.
«Утверждено» на методическом объединении Учителей физики, математики и информатики и ИКТ 17.02.2014г. Руководитель М.О. учитель математики С.А. Шемет ________ |
Итоговая контрольная работа по теме
«Основы алгоритмизации». 9 класс.
Вариант 1
-
Алгоритм - это:
-
протокол вычислительной сети;
-
правила выполнения определенных действий;
-
описание последовательности действий, строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов;
-
ориентированный граф, указывающий порядок выполнения некоторого набора команд;
-
набор команд для компьютера.
-
-
Алгоритм включает в себя ветвление, если:
-
он составлен так, что его выполнение предполагает многократное повторение одних и тех же действий;
-
он представим в табличной форме;
-
его команды выполняются в порядке их естественного следования друг за другом независимо от каких-либо условий;
-
ход его выполнения зависит от истинности тех или иных условий;
-
он включает в себя вспомогательный алгоритм.
-
-
Свойство алгоритма, заключающиеся в отсутствие ошибок (алгоритм должен приводить к правильному результату для всех допустимых входных значениях), называется:
-
Массовость;
-
Конечность;
-
Дискретность;
-
Результативность;
-
Детерминированность;
-
-
Свойство алгоритма, заключающиеся в том, что один и тот же алгоритм можно использовать с разными исходными данными, называется:
-
детерминированность
-
массовость
-
конечность
-
дискретность
-
результативность
-
-
Какая структура программы верная. Перечислите и объясните найденные ошибки:
Begin
program MyFirst;
X:=Y+195;
end.
program MyProg;
begin
Writeln ('Привет');
end.
-
Какое значение будет принимать переменная Х, после выполнения фрагмента программы. Запишите решение и ответ:
f:=17;
d:=5;
If f>=d then x:=f else x:=d
A) 5; Б) 12; В) 2; Г) 17
-
Чему будет равно значение переменной с в результате выполнения серии операторов. Запишите решение и ответ:
a := 6*12 + 3;
b := a div 10 + 5;
a := b mod 10 + 1;
c := a*a + b*b - a / 2 * b;
-
Чему будет равен значение А после выполнения алгоритма (рис.1). Запишите решение и ответ. Рис.1
-
Определите, что будет напечатано в результате работы следующего фрагмента программы. Запишите решение и ответ:
var k, s: integer;
begin
s:=0;
k:=1;
while k < 11 do begin
s:=s+k;
k:=k+1;
end;
write(s);
end.
-
Составьте блок-схему, напишите программу на языке Паскаль. Задачи:
-
Дано целое число. Если оно является положительным, то прибавить к нему 1; в противном случае вычесть из него 2. Вывести полученное число.
-
Найти сумму положительных чисел массива X, состоящего из N элементов.
-
Итоговая контрольная работа по теме
«Основы алгоритмизации». 9 класс.
Вариант 2
-
Алгоритм, записанный на «понятном» компьютеру языке программирования, называется:
-
листингом;
-
исполнителем алгоритмов;
-
протоколом алгоритма;
-
программой;
-
текстовкой.
-
-
Алгоритм называется циклическим, если:
-
его команды выполняются в порядке их естественного следования друг за другом независимо от каких-либо условий;
-
он составлен так, что его выполнение предполагает многократное повторение одних и тех же действий;
-
ход его выполнения зависит от истинности тех или иных условий
-
он включает в себя вспомогательный алгоритм;
-
он представим в табличной форме.
-
-
Свойство алгоритма, заключающиеся в том, что каждое действие и алгоритм в целом должны иметь возможность завершения, называется:
-
Дискретность;
-
Конечность;
-
Результативность;
-
Детерминированность;
-
Массовость.
-
-
Свойство алгоритма, заключающиеся в том, что алгоритм должен состоять из конкретных действий, следующих в определенном порядке, называется:
-
Дискретность;
-
Массовость;
-
Конечность;
-
Результативность;
-
Детерминированность;
-
-
Найдите ошибки в записях оператора:
a) Write ©;
b) Writeln;
c) Writeln (Введите любое число);
d) Write X,Y;
e) WRITELN ('воскресенье, нерабочий день');
-
Какое значение будет принимать переменная Х, после выполнения фрагмента программы Запишите решение и ответ:
f:=5;
d:=7;
If f>=d then x:=f else x:=d
a) 5; b) 6; c) 7; d) 1
-
Чему будет равно значение переменной с в результате выполнения серии операторов. Запишите решение и ответ:
x:= 8 + 2*5;
y
I:=:= (x mod 10) + 14;
x:= (y div 10) + 3;
c:= x - y;
-
Чему будет равен значение S после выполнения алгоритма (рис.1). Запишите решение и ответ. Рис.1
-
Определите, что будет напечатано в результате работы следующего фрагмента программы. Запишите решение и ответ
var k, s: integer;
begin
s:=0;
k:=0;
while k < 30 do begin
k:=k+3;
s:=s+k;
end;
write(s);
end.
-
Составьте блок-схему, напишите программу на языке. Задачи:
-
Даны два числа. Вывести большее из них.
-
Найти максимальное число массива X, состоящего из N элементов.
-
Ответы к итоговой контрольной работе по теме
«Основы алгоритмизации». 9 класс.
Вариант 1
Номер задания
Ответ
Решение
1
с
нет
2
d
нет
3
d
нет
4
b
нет
5
b
Вариант «а» неправильный, потому что структура программы состоит из: заголовка, блок описаний, служебное слово «begin», блок операторов и служебное слово «end».
Заголовок пишется первым по следующему правилу: сначала служебное слово «program» после через пробел название программы и знак «;».
Ошибка варианта «а» в первых двух строках. Их надо поменять местами: название программы на первое место, служебное слово «begin» на второе место.
Поэтому правильная запись варианта ответа «а»:
program MyFirst;
Begin
X:=Y+195;
end.
6
Г
Даны две переменные f=17 и d=5. Алгоритмическая конструкция «ветвление» вычисляет значение переменной x по условию. Условие (f>=d) ИСТИНА, т.к. 17>5. Поэтому выполняем действия стоящие после служебного слова «then» и до «else», а именно x:=f. Получаем, что x=17
7
135
Команда div - это выделение целой части при делении Команда mod - это выделение остатка части при делении
а = 6 * 12 + 3 = 75
b = a div 10 +5 = 75 div 10 + 5 = 7 + 5 = 12
a = b mod 10 + 1 = 12 mod 10 + 1 = 2 + 1 = 3
c = a * a + b * b - a / 2 * b = 3 * 3 + 12 * 12 - 3 / 2 * 12 =
= 9 + 144 - 1,5 * 12 = 153 - 18 = 135
8
5
А = 2
Цикл «со счетчиком» I. Повторяет три раза. Переменная I принимает значения от 2 до 4:
-
I = 2, А = А + 1 = 2 + 1 = 3
-
I = 3, А = А + 1 = 3 + 1 = 4
-
I = 4, А = А + 1 = 4 + 1 = 5
9
55
s=0, k=1
Цикл «пока». Пока k<11 выполнять тело цикла. Цикл повторится 10 раз:
-
k = 1, s = s + k = 0 + 1 = 1, k = k + 1 = 1 + 1 = 2
-
k = 2, s = s + k = 1 + 2 = 3, k = k + 1 = 2 + 1 = 3
-
k = 3, s = s + k = 3 + 3 = 6, k = k + 1 = 3 + 1 = 4
-
k = 4, s = s + k = 6 + 4 = 10, k = k + 1 = 4 + 1 = 5
-
k = 5, s = s + k = 10 + 5 = 15, k = k + 1 = 5 + 1 = 6
-
k = 6, s = s + k = 15 + 6 = 21, k = k + 1 = 6 + 1 = 7
-
k = 7, s = s + k = 21 + 7 = 28, k = k + 1 = 7 + 1 = 8
-
k = 8, s = s + k = 28 + 8 = 36, k = k + 1 = 8 + 1 = 9
-
k = 9, s = s + k = 36 + 9 = 45, k = k + 1 = 9 + 1 = 10
-
k = 10, s = s + k = 45 + 10 = 55, k = k + 1 = 10 + 1 = 11
Задание №10 (а)
Блок-схема
Программа на языке Паскаль
Да
Нет
program v1_10A;
var x:integer;
begin
writeln('Введите целое число:');
readln(x);
if x>0 then
x:=x+1
else
x:=x-2;
writeln('Число=',x);
end.
Задание №10 (б)
Блок-схема
Программа на языке Паскаль
program v1_10B;
const n=10;
var x:array [1..n] of integer;
i,s:integer;
begin
for i:=1 to n do
begin
writeln('Введите значение ',i);
readln(x[i]);
end;
s:=0;
for i:=1 to n do
if x[i]>0 then s:=s+x[i];
writeln('Сумма положительных чисел=',s);
end.
Вариант 2
Номер задания
Ответ
Решение
1
d
нет
2
b
нет
3
b
нет
4
e
нет
5
a,c,d
Записать команды write выглядит следующим образом:
Сначала название команды: write или writeln, потом открывающаяся скобка, если записывается текст то ставиться после скобки кавычка; потом записывается текст или перечисляются переменные через запятую, потом закрывается скобка, если заканчивается запись текста, то ставиться перед скобкой кавычка; потом точка с запятой:
Writeln(''); или writeln(a,b);
Вариант «а» ошибочный, потому что нет скобок и знак не внесен в кавычки. Правильная запись: Write('© ');
Вариант «c» ошибочный, потому что текст не внесен в кавычки. Правильная запись: Write('Введите любое число');
Вариант «d» ошибочный, потому что нет скобок. Правильная запись: Write(X, Y)
6
c
Даны две переменные f=5 и d=7. Алгоритмическая конструкция «ветвление» вычисляет значение переменной x по условию. Условие (f>=d) ЛОЖЬ, т.к. 5<7. Поэтому выполняем действия стоящие после служебного слова «else», а именно x:=d. Получаем, что x=7
7
-17
Команда div - это выделение целой части при делении Команда mod - это выделение остатка части при делении
x = 8 + 2 * 5 = 8 + 10 = 18
y = ( x mod 10 ) + 14 = ( 18 mod 10 ) + 14 = 8 + 14 = 22
x = ( y div 10 ) + 3 = 2 + 3 = 5
c = x - y = 5 - 22 = -17
8
9
S = 0
Цикл «со счетчиком» I. Повторяет три раза. Переменная I принимает значения от 2 до 4:
-
I = 2, S = S + I = 0 + 2 = 2
-
I = 3, S = S + I = 2 + 3 = 5
-
I = 4, S = S + I = 5 + 4 = 9
9
165
s=0, k=0
Цикл «пока». Пока k<30 выполнять тело цикла. Цикл повторится 10 раз:
-
k = 0, k = k + 3 = 0 + 3 = 3, s = s + k = 0 + 3 = 3
-
k = 3, k = k + 3 = 3 + 3 = 6, s = s + k = 3 + 6 = 9
-
k = 6, k = k + 3 = 6 + 3 = 9, s = s + k = 9 + 9 = 18
-
k = 9, k = k + 3 = 9 + 3 = 12, s = s + k = 18 + 12 = 30
-
k = 12, k = k + 3 = 12 + 3 = 15, s = s + k = 30 + 15 = 45
-
k = 15, k = k + 3 = 15 + 3 = 18, s = s + k = 45 + 18 = 63
-
k = 18, k = k + 3 = 18 + 3 = 21, s = s + k = 63 + 21 = 84
-
k = 21, k = k + 3 = 21 + 3 = 24, s = s + k = 84 + 24 = 108
-
k = 24, k = k + 3 = 24 + 3 = 27, s = s + k = 108 + 27 = 135
-
k = 27,k = k + 3 = 27 + 3 = 30,s = s + k = 135 + 30 = 165
Задание №10 (а)
Блок-схема
Программа на языке Паскаль
Да
Нет
program v2_10A;
var x,y:integer;
begin
writeln('Введите 2 целых числа:');
readln(x,y);
if x>y then
writeln('Больше:',x)
else
writeln('Больше:',y);
end.
Задание №10 (б)
Блок-схема
Программа на языке Паскаль
program v2_10B;
const n=10;
var x:array [1..n] of integer;
i,max:integer;
begin
for i:=1 to n do
begin
writeln('Введите значение ',i);
readln(x[i]);
end;
max:=x[1];
for i:=2 to n do
if x[i]>max then max:=x[i];
writeln('Максимальное число=',max);
end.