Демонстрационный вариант контрольных измерительных материалов по информатике за 8 класс Инструкция по выполнению работы Работа включает в себя 7 заданий. Часть 1 содержит 5 задания с кратким ответом; часть 2 содержит 2 задания, которые необходимо выполнить на компьютере. В данном файле также содержится спецификация и шкала переводов баллы в оценки Задание 1 (оценивается в 1 балл) Сообщение было зашифровано кодом. Использовались только буквы, приведенные в таблице: А Б В Г Д Е ..o.. .o..o .oo.o .oooo ...o. .o.oo Определите, какие буквы в сообщении повторяются, и запишите их в ответе. .o..o.o.oo.o..o..o....o.. Решение. Данный код расшифровывается однозначно, расшифровкой является слово БЕБАА. Следовательно, в принятом сообщении повторяются буквы А и Б. Таким образом, ответ АБ или БА. ИЛИ От разведчика была получена следующая шифрованная радиограмма, переданная с использованием азбуки Морзе: •––•••–••––••–••–•–– При передаче радиограммы было потеряно разбиение на буквы, но известно, что в радиограмме использовались только следующие буквы: А Д Л Т Ж •– –•• •–•• – •••– Расшифруйте радиограмму. Запишите в ответе расшифрованную радиограмму. Решение. Первые символы кода — «•–» — могут кодировать только букву А. С символа «–» начинается только буква Д. Следующей буквой может быть либо буква А, либо буква Л, однако, буква А нам не подходит, поскольку в таком случае дальнейшая расшифровка невозможна. Комбинация «–» соответствует букве Т, «–••» — букве Д, «•–» — букве А. Итак, шифром закодировано сообщение АДЛТДДТАТ. ИЛИ 3. Валя шифрует русские слова (последовательности букв), записывая вместо каждой буквы ее код: А Д К Н О С 01 100 101 10 111 000 Некоторые цепочки можно расшифровать не одним способом. Например, 00010101 может означать не только СКА, но и СНК. Даны три кодовые цепочки: 1010110 11110001 100000101 Найдите среди них ту, которая имеет только одну расшифровку, и запишите в ответе расшифрованное слово. Решение. Проанализируем каждый вариант ответа: 1) «1010110» может означать как «НКН» так и «КАН». 2) «11110001» может означать только «ОДА». 3) «100000101» может означать как «ДСК» так и «НСАА». Следовательно, ответ «ОДА». Задание 2 (оценивается в 1 балл) Напишите наибольшее целое число x, для которого истинно высказывание: НЕ (X четное) И НЕ (X >= 11). Решение. Запишем выражение в виде (X нечетное) И (X < 11). Значит, наибольшее число, для которого высказывание будет истинным — 9. О т в е т : 9. ИЛИ Напишите наименьшее целое число x, для которого истинно высказывание: НЕ (X <= 7) И (X < 20). Решение. Запишем выражение в виде (X > 7) И (X < 20). Значит, наименьшее число, для которого высказывание будет истинным — 8. О т в е т : 8. ИЛИ Напишите число X, для которого истинно высказывание: НЕ (X < 6) И (X < 7). Решение. Логическое «И» истинно тогда, когда истинны оба высказывания. Запишем выражение в виде (X ≥ 6) И (X < 7). Значит, число, для которого высказывание будет истинным — 6. О т в е т : 6. Задание 3 (оценивается в 1 балл) У исполнителя Гамма две команды, которым присвоены номера: 1. прибавь 3; 2. умножь на b (b — неизвестное натуральное число; b ≥ 2). Выполняя первую из них, Гамма увеличивает число на экране на 3, а выполняя вторую, умножает это число на b. Программа для исполнителя Гамма — это последовательность номеров команд. Известно, что программа 11121 переводит число 3 в число 75. Определите значение b. Решение. Заметим, что после выполнения первых трех команд мы получаем число 12. Далее, составим и решим уравнение: О т в е т : 6. Примечание. Заметим, что стартовое число 3, следовательно, при выполнении первых трех команд получим сумму 12 3 + 3 + 3 + 3 = 12 ИЛИ У исполнителя Альфа две команды, которым присвоены номера: 1. прибавь 4; 2. раздели на b (b — неизвестное натуральное число; b ≥ 2). Выполняя первую из них, Альфа увеличивает число на экране на 4, а выполняя вторую, делит это число на b. Программа для исполнителя Альфа — это последовательность номеров команд. Известно, что программа 11121 переводит число 76 в число 26. Определите значение b. Решение. Заметим, что после выполнения первых трех команд мы получаем число 88. Далее, составим и решим уравнение: О т в е т : 4. Задание 4 (оценивается в 1 балл) Ниже приведена программа, записанная на ДВУХ языках программирования. Паскаль var s, t: integer; begin readln(s); readln(t); if (s < 10) or (t < 10) then writeln('YES') else writeln('NO') end. Алгоритмический язык алг нач цел s, t ввод s ввод t если s < 10 или t < 10 то вывод "YES" иначе вывод "NO" все кон Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел: (6, 4); (7, 8); (12, 10); (5, 6); (11, 10); (–5, 7); (–2, 2); (4, 5); (8, 6). Сколько было запусков, при которых программа напечатала «NO»? Решение. Заметим, что программа напечатает «NO», если обе введенные переменные s и t будут больше или равны 10. Значит, было 2 запуска, при которых программа напечатала «NO». В качестве значений переменных s и t в этих случаях вводились следующие пары чисел: (12, 10); (11, 10). О т в е т : 2. ИЛИ Ниже приведена программа, записанная на ДВУХ языках программирования. Паскаль var s, t: integer; begin readln(s); readln(t); if (s > 8) or (t > 8) then writeln('YES') else writeln('NO') end. Алгоритмический язык алг нач цел s, t ввод s ввод t если s > 8 или t > 8 то вывод "YES" иначе вывод "NO" все кон Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел: (8, 8); (9, 6); (4, 7); (6, 6); (–9, –2); (–5, 9); (–10, 10); (6, 9); (10, 6). Сколько было запусков, при которых программа напечатала «NO»? Решение. Заметим, что программа напечатает «NO», если обе введенные переменные s и t будут меньше или равны 8. Значит, было 4 запуска, при которых программа напечатала «NO». В качестве значений переменных s и t в этих случаях вводились следующие пары чисел: (8, 8); (4, 7); (6, 6); (–9, –2). О т в е т : 4. Задание 6 (оценивается в 1 балл) Переведите двоичное число 1100110 в десятичную систему счисления. Решение. Имеем: 11001102 = 1 · 26 + 1 · 25 + 1 · 22 + 1 · 21 = 64 + 32 + 4 + 2 = 102. О т в е т : 102. Среди приведенных ниже трех чисел, записанных в различных системах счисления, найдите максимальное и запишите его в ответе в десятичной системе счисления. В ответе запишите только число, основание системы счисления указывать не нужно. 2316, 328, 111102. Решение. Переведем все числа в десятичную систему счисления: 1. 2316 = 2*161+3*160 = 3510; 2. 328 =3*81+2*80 = 2610; 3. 111102 =1 · 24 + 1 · 23 + 1 · 22 + 1 · 21 +0= 3010. Таким образом, наибольшим среди этих трех чисел является число 35. О т в е т : 35. Среди приведенных ниже трех чисел, записанных в десятичной системе счисления, найдите число, сумма цифр которого в восьмеричной записи наименьшая. В ответе запишите сумму цифр в восьмеричной записи этого числа. 5510, 8310, 9110. Решение. Переведем все числа в восьмеричную систему счисления: 1. 5510 = 678, сумма цифр — 6 + 7 = 158; 2. 8310 = 1238 , сумма цифр — 1 + 2 + 3 = 68; 3. 9110 = 1338 , сумма цифр — 1 + 3 + 3 = 78. Таким образом, наименьшей суммой цифр в восьмеричной записи числа является число 6. О т в е т : 6. Задание 7 (оценивается в 2 балла) Написать программу, которая по введенному с клавиатуры числу, обозначающему количество секунд. Выводит то же самое время в часах, минутах и секундах. Справочно в часу – 3600 секунд, в минуте 60 секунд Пример: Введите число секунд: 8325 – ответ 2 ч. 18 мин. 45 с Решение. program ok; Var a,x,k,b:integer; begin writeln ('Введите число'); Readln (a); x:=a div 3600;{находим количество часов, для этого выделаем целую часть от деления на 3600} k:=a mod 60; {находим количество секунд, для этого выделяем остаток от деления на 60} b:=(a-x*3600) div 60; {находим количество минут} writeln (x,' часов ',b,' минут ',k,' секунд'); {Выводим красиво с пояснением} end. Возможны и другие варианты решения Для проверки правильности работы программы необходимо использовать следующие тесты: № 1 2 3 Входные данные Выходные данные 326585 9 часов 4 минут 18 секунды 3526 0 часов 58 минут 46 секунд 36 0 часов 0 минут 36 секунд Задание 7 (оценивается в 3 балла) Напишите программу, которая в последовательности натуральных чисел определяет сумму всех чисел, кратных 6 и оканчивающихся на 4. Программа получает на вход натуральные числа, количество введенных чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность). Количество чисел не превышает 100. Введенные числа не превышают 300. Программа должна вывести одно число: сумму всех чисел, кратных 6 и оканчивающихся на 4. Пример работы программы: Входные данные Выходные данные 54 78 28 72 34 24 0 15.2 Решением является программа, записанная на любом языке программирования. Пример верного решения, записанного на языке Паскаль: var a, s: integer; begin s:= 0; readln(a); (вводим число будет введено один раз) while a<>0 do begin (оформляем цикл с предусловием, пока А не станет равна 0) if (a mod 6= 0) (находим кратное 6) and (и) (a mod 10 = 4) (заканчивающееся на 4) then s := s + a; (считаем сумму таких чисел) readln(a); (вводим еще раз число именно тут и, да, второй раз, и будем вводить, пока не введем 0) end; writeln(s) (выводим ответ) end. Возможны и другие варианты решения. Для проверки правильности работы программы необходимо использовать следующие тесты: № Входные данные Выходные данные 1 54 78 18 44 24 0 2 45 0 0 3 84 84 0 Шкала перевода полученных баллов в оценки Отметка «2» 0-2 Отметка «3» 3-5 Отметка «4» 6-8 Отметка «5» 9-10 Спецификация к итоговой контрольной работе по информатике за 8 класс Работа состоит из 6 заданий: базового уровня сложности 5, повышенного — 1, высокого — 1. Заданий с кратким ответом — 5, с развернутым ответом — 2. Работа рассчитана на 50 минут. Обозначение уровня сложности задания: Б — базовый, П — повышенный, В — высокий. Номе р задан ия Предметный результат обучения 1 2 Уров ень слож ност и Макс. балл за задани е Примерное время выполнения задания (мин.) Проверяемые результатам Уметь Б декодировать кодовую последовательн ость 1 3 Определять истинность 1 3 Уметь декодировать кодовую последовательность Равномерный код. Неравномерный код. Кодировка ASCII. Восьмибитные кодировки. Понятие о кодировках UNICODE. Декодирование сообщений с использованием равномерного и неравномерного кода. Определение истинности составного высказывания, если известны значения Б требования к предметным составного высказывания Анализировать простые алгоритмы для конкретного исполнителя с фиксированны м набором команд Формально исполнять алгоритмы, записанные на языке программирова ния Б 1 3 Б 1 3 5 Записывать числа в различных системах счисления Б 1 4 6 Создавать и выполнять программы для заданного исполнителя (вариант 1) Создавать и выполнять программы для заданного исполнителя (вариант 2) П 2 15 В 3 20 3 4 7 истинности входящих в него элементарных высказываний. Логические выражения. Правила записи логических выражений. Построение таблиц истинности логических выражений Определение возможных результатов работы алгоритма при данном множестве входных данных, определение возможных входных данных, приводящих к данному результату Язык программирования (Python, C++, Паскаль, Java, C#, Школьный Алгоритмический Язык). Переменная: тип, имя, значение. Целые, вещественные и символьные переменные. Оператор присваивания. Арифметические выражения и порядок их вычисления. Операции с целыми числами: целочисленное деление, остаток от деления. Ветвления. Составные условия (запись логических выражений на изучаемом языке программирования) Двоичная система счисления. Перевод целых чисел в пределах от 0 до 1024 в двоичную систему счисления. Восьмеричная система счисления. Перевод чисел из восьмеричной системы в двоичную и десятичную системы и обратно. Шестнадцатеричная система счисления. Перевод чисел из шестнадцатеричной системы в двоичную, восьмеричную и десятичную системы и обратно. Арифметические операции в двоичной системе счисления Составление алгоритмов и программ с использованием ветвлений Язык программирования. Система программирования: редактор текста программ, транслятор, отладчик. Переменная: тип, имя, значение. Целые, вещественные и символьные переменные. Оператор присваивания. Арифметические выражения и порядок их вычисления. Операции с целыми числами: целочисленное деление, остаток от деления. Ветвления. Составные условия (запись логических выражений на изучаемом языке программирования). Цикл с условием. Разбиение записи натурального числа в позиционной системе с основанием, меньшим или равным 10, на отдельные цифры.