Реферат: ЕГЭ информатика и ИКТ 2011 - Refy.ru - Сайт рефератов, докладов, сочинений, дипломных и курсовых работ

ЕГЭ информатика и ИКТ 2011

ЕГЭ » ЕГЭ информатика и ИКТ 2011
Демонстрационный вариант ЕГЭ 2011 г. ИНФОРМАТИКА и ИКТ, 11 класс. (2011 - 1 / 33 )
Единый государственный экзамен по ИНФОРМАТИКЕ и ИКТ
Демонстрационный вариант
контрольных измерительных материалов единого
государственного экзамена 2011 года
по информатике и ИКТ
подготовлен Федеральным государственным научным учреждением
«ФЕДЕРАЛЬНЫЙ ИНСТИТУТ ПЕДАГОГИЧЕСКИХ ИЗМЕРЕНИЙ»
Единый государственный экзамен по ИНФОРМАТИКЕ и ИКТ
Пояснения к демонстрационному варианту контрольных
измерительных материалов для проведения в 2011 году
единого государственного экзамена по информатике и ИКТ
При ознакомлении с демонстрационным вариантом контрольных
измерительных материалов ЕГЭ 2011 года следует иметь в виду, что задания, в него включенные, не отражают всех элементов, которые будут проверяться с помощью вариантов КИМ в 2011 году. Полный перечень элементов содержания, которые могут контролироваться на едином государственном экзамене 2011 года, приведен в «Кодификаторе элементов содержания и требований к уровню подготовки выпускников общеобразовательных учреждений для проведения в 2011 году единого государственного экзамена по информатике и ИКТ».
Назначение демонстрационного варианта заключается в том, чтобы
дать возможность любому участнику ЕГЭ и широкой общественности составить представление о структуре будущих КИМ, количестве заданий, их форме, уровне сложности. Приведенные критерии оценки выполнения заданий с развернутым ответом, включенные в этот вариант, дают представление о требованиях к полноте и правильности записи развернутого ответа.
Эти сведения позволят выпускникам выработать стратегию подготовки
к ЕГЭ.
Демонстрационный вариант
контрольных измерительных материалов
для проведения в 2011 году единого государственного экзамена
по ИНФОРМАТИКЕ и ИКТ
Инструкция по выполнению работы
На выполнение экзаменационной работы по информатике отводится
4 часа (240 минут). Экзаменационная работа состоит из 3 частей, содержащих 32 задания. На выполнение частей 1 и 2 работы рекомендуется отводить 1,5 часа (90 минут). На выполнение заданий части 3 – 2,5 часа (150 минут).
Часть 1 содержит 18 заданий с выбором ответа. К каждому заданию
дается 4 варианта ответа, из которых только один правильный.
Часть 2 состоит из 10 заданий с кратким ответом (к этим заданиям вы
должны самостоятельно сформулировать и записать ответ).
Часть 3 состоит из 4 заданий. Для выполнения заданий этой части вам
необходимо написать развернутый ответ в произвольной форме.
Выполняйте задания в том порядке, в котором они даны. Если какое-то
задание вызывает у вас затруднение, пропустите его и постарайтесь выполнить те, в ответах на которые вы уверены. Если после выполнения всей работы у вас останется время, вы сможете вернуться к пропущенным заданиям.
За каждый правильный ответ в зависимости от сложности задания
дается один или более баллов. Баллы, полученные вами за все выполненные задания, суммируются. Постарайтесь выполнить как можно больше заданий и набрать наибольшее количество баллов.
Желаем успеха!
В экзаменационных заданиях используются следующие соглашения: 1. Обозначения для логических связок (операций): a) отрицание (инверсия, логическое НЕ) обозначается
¬ (например, ¬А);
b) конъюнкция (логическое умножение, логическое И) обозначается /
(например, А / В) либо & (например, А & В);
c) дизъюнкция (логическое сложение, логическое ИЛИ) обозначается /
(например, А / В);
d) следование (импликация) обозначается → (например, А → В); e) тождествообозначается ≡ (например, A ≡ B). Выражение A ≡ B истинно тогда и только тогда, когда значения A и B совпадают (либо они оба истинны, либо они оба ложны). f) символ 1 используется для обозначения истины (истинного высказывания); символ 0 – для обозначения лжи (ложного высказывания). 2. Два логических выражения, содержащих переменные, называются равносильными (эквивалентными), если значения этих выражений совпадают при любых значениях переменных. Так, выражения А → В и (
¬А) / В
равносильны, а А / В и А / В – нет (значения выражений разные, например, при А = 1, В = 0). 3. Приоритеты логических операций: инверсия (отрицание), конъюнкция (логическое умножение), дизъюнкция (логическое сложение), импликация (следование). Таким образом,
¬А / В / С / D означает то же, что и
(( ¬А) / В) / (С / D).
Возможна запись А / В / С вместо (А / В) / С. То же относится и к дизъюнкции: возможна запись А / В / С вместо (А / В) / С.
© 2011 Федеральная служба по надзору в сфере образования и науки РФ
Демонстрационный вариант ЕГЭ 2011 г. ИНФОРМАТИКА и ИКТ, 11 класс. (2011 - 5 / 33 ) Демонстрационный вариант ЕГЭ 2011 г. ИНФОРМАТИКА и ИКТ, 11 класс. (2011 - 6 / 33 )
Часть 1 A4 Чему равна сумма чисел 57 8 и 46 16 ?
1) 351 8
При выполнении заданий этой части из четырех предложенных вам вариантов ответа выберите один правильный. В бланке ответов № 1 под номером выполняемого вами задания (А1–А18) поставьте знак « 2) 125 8
3) 55 16
× » в 4) 75 16
клеточку, номер которой соответствует номеру выбранного вами ответа. A5 Для передачи по каналу связи сообщения, состоящего только из символов А, Б, В и Г, используется неравномерный (по длине) код: А-00, Б-11, В-010, Г-011. Через канал связи передается сообщение: ГБВАВГ. Закодируйте сообщение данным кодом. Полученную двоичную последовательность переведите в шестнадцатеричную систему счисления. Какой вид будет иметь это сообщение?
A1 Дано А=A7 16 , B=251 8 . Какое из чисел C, записанных в двоичной системе,
отвечает условию A<C<B?
1) 10101100 2
2) 10101010 2 1) 71013 2) DBCACD 3) 7A13 4) 31A7
3) 10101011 2
4) 10101000 2
A2 Автоматическое устройство осуществило перекодировку информационного сообщения на русском языке длиной в 20 символов, первоначально записанного в 16-битном коде Unicode, в 8-битную кодировку КОИ-8. При этом информационное сообщение уменьшилось на
A6 Путешественник пришел в 08:00 на автостанцию населенного пункта ЛИСЬЕ и обнаружил следующее расписание автобусов для всей районной сети маршрутов:
1) 320 бит 2) 20 бит 3) 160 байт 4) 20 байт Пункт Пункт Время Время
A3 Для групповых операций с файлами используются маски имен файлов. Маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов, в которых также могут встречаться следующие символы: Символ «?» (вопросительный знак) означает ровно один произвольный символ. Символ «*» (звездочка) означает любую последовательность символов произвольной длины, в том числе «*» может задавать и пустую последовательность. Определите, по какой из масок будет выбрана указанная группа файлов: отправления прибытия отправления прибытия
ЛИСЬЕ ЗАЙЦЕВО 07:50 09:05
СОБОЛЕВО ЛИСЬЕ 08:55 10:05
ЕЖОВО ЛИСЬЕ 09:05 10:15
ЗАЙЦЕВО ЕЖОВО 10:00 11:10
ЛИСЬЕ СОБОЛЕВО 10:15 11:30
ЛИСЬЕ ЕЖОВО 10:45 12:00
ЗАЙЦЕВО ЛИСЬЕ 11:05 12:15
1234.xls 23.xml 234.xls 23.xml СОБОЛЕВО ЗАЙЦЕВО 11:10 12:25
ЕЖОВО ЗАЙЦЕВО 12:15 13:25
ЗАЙЦЕВО СОБОЛЕВО 12:45 13:55
1) *23*.?x* 2) ?23?.x?? 3) ?23?.x* 4) *23*.??? Определите самое раннее время, когда путешественник сможет оказаться в пункте ЗАЙЦЕВО согласно этому расписанию.
1) 09:05 2) 12:15 3) 12:25 4) 13:25
A7 Лена забыла пароль для входа в Windows XP, но помнила алгоритм его получения из символов «A153B42FB4» в строке подсказки. Если последовательность символов «В4» заменить на «B52» и из получившейся строки удалить все трехзначные числа, то полученная последовательность и будет паролем: A10 Укажите, какое логическое выражение равносильно выражению A / ¬( ¬B / ¬C):
1) ¬A / B / ¬C 2) A / (B / C) 3) A / B / C 4) A / ¬B / ¬C
1) ABFB52 2) AB42FB52 3) ABFB4 4) AB52FB
A11 В динамической (электронной) таблице приведены значения посевных площадей (в га) и урожая (в центнерах) четырех зерновых культур в четырех хозяйствах одного района. В каком из хозяйств достигнута максимальная урожайность зерновых (по валовому сбору)? (Урожайность измеряется в центнерах с гектара.)
A8 Определите значение переменной c после выполнения следующего фрагмента программы, в котором a, b и с – переменные вещественного (действительного) типа.
Бейсик Паскаль
a = 120 b = 100 a = a + b / 2 IF b < a / 2 THEN a := a + b / 2; if b < a / 2 a := 120; b := 100; культуры Зерновые Посевы Урожай Посевы Урожай Посевы Урожай Посевы Урожай Заря Первомайское Название хозяйства Победа Рассвет
Пшеница 600 15300 900 23800 300 7500 1200 31200
c = b + a ELSE then c := b + a Рожь 100 2150 500 12000 50 1100 250 5500
c = b + a / 2 ENDIF else c := b + a / 2; Ячмень Овес 200 6000 200 6300 100 3100 350 10500 100 2350 400 10000 50 1200 200 4800
Си Алгоритмический зерновые Всего 1000 25800 2000 52100 500 12900 2000 52000
a = 120; a := 120
b = 100; a = a + b / 2; b := 100 a := a + b / 2
1) Заря 2) Первомайское 3) Победа 4) Рассвет
if (b < a / 2) c = b + a; если b < a / 2 то c := b + a
else c = b + a / 2; иначе c := b + a / 2 все
1) c = 105 2) c = 160 3) c = 185 4) c = 270
A9 Символом F обозначено одно из указанных ниже логических выражений от трех аргументов: X, Y, Z. Дан фрагмент таблицы истинности выражения F:
X Y Z F 0 1 1 0 1 1 1 1 0 0 1 1
Какое выражение соответствует F?
1) X / ¬Y / ¬Z 2) ¬X / ¬Y / Z 3) ¬X / ¬Y / Z 4) X / ¬Y / ¬Z
© 2011 Федеральная служба по надзору в сфере образования и науки РФ © 2011 Федеральная служба по надзору в сфере образования и науки РФ
Демонстрационный вариант ЕГЭ 2011 г. ИНФОРМАТИКА и ИКТ, 11 класс. (2011 - 9 / 33 )
A12 Торговое предприятие владеет тремя магазинами (I, II и III), каждый из которых реализует периферийные компьютерные устройства: мониторы (М), принтеры (П), сканеры (С) или клавиатуры (К). На диаграмме 1 показано количество проданных товаров каждого вида за месяц. На диаграмме 2 показано, как за тот же период соотносятся продажи товаров (в штуках) в трех магазинах предприятия.
1) 2)
45
40
35
30
25
20
15
10
5
0
М П С К
Какое из приведенных ниже утверждений следует из анализа обеих диаграмм?
А) Все сканеры могли быть проданы через магазин III Б) Все принтеры и сканеры могли быть проданы через магазин II В) Все мониторы могли быть проданы через магазин I Г) Ни один принтер не был продан через магазин II
1) А 2) Б 3) В 4) Г
A13 База данных о торговых операциях дистрибутора состоит из трех связанных таблиц. Ниже даны фрагменты этих таблиц.
Таблица зарегистрированных дилеров
Наименование организации дилера ID Регион Адрес
ООО «Вектор» D01 Башкортостан г. Уфа, ул. Школьная, 15
АО «Луч» D02 Татарстан г. Казань, ул. Прямая, 17
АОЗТ «Прямая» D03 Адыгея г. Майкоп, просп. Мира, 8
ООО «Окружность» D04 Дагестан г. Дербент, ул. Замковая, 6
ИЧП Скаляр D05 Дагестан г. Махачкала, ул. Широкая, 28
АО «Ромб» D06 Татарстан г. Набережные Челны, ул. Заводская, 4
Таблица отгрузки товара
Номер Отгружено Артикул Отгружено Дата
накладной дилеру товара упаковок отгрузки
001 D01 01002 300 5/01/2009 г.
002 D02 01002 100 5/01/2009 г.
003 D06 01002 200 5/01/2009 г.
004 D01 02002 20 5/01/2009 г.
005 D02 02002 30 5/01/2009 г.
006 D02 01003 20 6/01/2009 г.
Таблица товаров
Наименование товара Артикул Отдел Количество в упаковке единиц Брутто вес упаковки
Фломастеры, пачка 24 шт. 01001 Канцтовары 24 5
Бумага А4, пачка 500 листов 01002 Канцтовары 5 10
Скрепки металлические 1000 шт. 01003 Канцтовары 48 20
Розетки трехфазные 02001 Электротовары 12 2
Лампа накаливания 60 Вт 02002 Электротовары 100 8
Выключатель 2-клавишный 02003 Электротовары 48 7
Сколько пачек бумаги было отгружено в Татарстан 5 января 2009 г.?
1) 100 2) 200 3) 500 4) 1500
© 2011 Федеральная служба по надзору в сфере образования и науки РФ
Демонстрационный вариант ЕГЭ 2011 г. ИНФОРМАТИКА и ИКТ, 11 класс. (2011 - 11 / 33 ) Демонстрационный вариант ЕГЭ 2011 г. ИНФОРМАТИКА и ИКТ, 11 класс. (2011 - 12 / 33 )
A14 Для кодирования цвета фона интернет-страницы используется атрибут bgcolor="#ХХХХХХ", где в кавычках задаются шестнадцатеричные значения интенсивности цветовых компонент в 24-битной RGB-модели следующим образом: A17 В программе описан одномерный целочисленный массив A с индексами от 0 до 10. Ниже представлен фрагмент этой программы, записанный на разных языках программирования, в котором значения элементов массива сначала задаются, а затем меняются.
Бейсик Паскаль
FOR i=0 TO 10 A(i)=i-1 for i:=0 to 10 do A[i]:=i-1;
.
К какому цвету будет близок цвет страницы, заданный тэгом <body bgcolor="#747474">? NEXT i FOR i=10 TO 1 STEP -1 for i:=10 downto 1 do A[i-1]:=A[i];
A(i-1)=A(i) NEXT i
1) серый 2) белый 3) фиолетовый 4) черный
Си Алгоритмический язык
for (i=0;i<=10;i++) нц для i от 0 до 10
A[i]=i-1; for (i=10;i>=1;i--) A[i-1]=A[i]; A[i]:=i-1 кц нц для i от 10 до 1 шаг -1
A15 Какое из приведенных имен удовлетворяет логическому условию: ¬ (последняя буква гласная первая буква согласная) / вторая буква согласная A[i-1]:=A[i] кц
Чему окажутся равны элементы этого массива?
1) ИРИНА 2) АРТЕМ 3) СТЕПАН 4) МАРИЯ
1) 9 9 9 9 9 9 9 9 9 9 9 2) 0 1 2 3 4 5 6 7 8 9 9 3) 0 1 2 3 4 5 6 7 8 9 10 4) -1 -1 0 1 2 3 4 5 6 7 8
A16 В некоторой стране автомобильный номер длиной 7 символов составляют из заглавных букв (используются только 22 различные буквы) и десятичных цифр в любом порядке. Каждый такой номер в компьютерной программе записывается минимально возможным и одинаковым целым количеством байт (при этом используют посимвольное кодирование и все символы кодируются одинаковым и минимально возможным количеством бит). Определите объем памяти, отводимый этой программой для записи 50 номеров.
1) 350 байт 2) 300 байт 3) 250 байт 4) 200 байт
A18 Система команд исполнителя РОБОТ, «живущего» в клетках прямоуголь- ного лабиринта на плоскости: Часть 2
Ответом к заданиям этой части (В1–В10) является число, последовательность букв или цифр, которые следует записать в бланк ответов № 1 справа от номера соответствующего задания, начиная с первой клеточки, без пробелов и каких-либо дополнительных символов. Каждую букву или цифру пишите в отдельной клеточке в соответствии с приведенными образцами.
вверх вниз влево вправо
При выполнении любой из этих команд РОБОТ перемещается на одну клетку, соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Четыре условия позволяют проверить отсутствие преград у каждой из сторон той клетки, где находится РОБОТ:
сверху свободно снизу свободно слева свободно справа свободно
В цикле ПОКА < условие > команда команда выполняется, пока условие истинно, иначе происходит переход на следующую строку программы. Если РОБОТ начнет движение в сторону стены, то он разрушится и выполнение программы прервется. Сколько клеток лабиринта соответствуют требованию, что, выполнив предложенную программу, РОБОТ уцелеет и остановится в той же клетке, с которой он начал движение? НАЧАЛО ПОКА < справа свободно > вниз ПОКА < снизу свободно > влево ПОКА < слева свободно > вверх ПОКА < сверху свободно > вправо КОНЕЦ
B1 Для передачи сигналов на флоте используются специальные сигнальные флаги, вывешиваемые в одну линию (последовательность важна). Какое количество различных сигналов может передать корабль при помощи четырех сигнальных флагов, если на корабле имеются флаги трех различных видов (флагов каждого вида неограниченное количество)?
B2 Запишите значение переменной aпосле выполнения фрагмента алгоритма:
a := 56 b := 77
Нет Да
а = b
1) 1 2) 2 3) 3 4) 4
Нет Да
а > b
b := b − a a := a − b
Примечание: знаком := обозначена операция присваивания.
В бланк ответов впишите только число.
B3 У исполнителя Калькулятор две команды, которым присвоены номера: 1. прибавь 1 2. умножь на 3 Выполняя первую из них, Калькулятор прибавляет к числу на экране 1, а выполняя вторую, утраивает его. Запишите порядок команд в программе получения из 2 числа 26, содержащей не более 6 команд, указывая лишь номера команд. (Например, программа 21211 – это программа умножь на 3 прибавь 1 умножь на 3 прибавь 1 прибавь 1 которая преобразует число 1 в 14.)
B7 Девять школьников, остававшихся в классе на перемене, были вызваны к директору. Один из них разбил окно в кабинете. На вопрос директора, кто это сделал, были получены следующие ответы:
Володя: «Это сделал Саша». Аня: «Володя лжет!» Егор: «Маша разбила». Саша: «Аня говорит неправду!» Рома: «Разбила либо Маша, либо Нина…» Маша: «Это я разбила!» Нина: «Маша не разбивала!» Коля: «Ни Маша, ни Нина этого не делали». Олег: «Нина не разбивала!»
Кто разбил окно, если известно, что из этих девяти высказываний истинны только три? Ответ запишите в виде первой буквы имени.
B4 На месте преступления были обнаружены четыре обрывка бумаги. Следствие установило, что на них записаны фрагменты одного IP-адреса. Криминалисты обозначили эти фрагменты буквами А, Б, В и Г. Восстановите IP-адрес. В ответе укажите последовательность букв, обозначающих фрагменты, в порядке, соответствующем IP-адресу.
B8 Строки (цепочки символов латинских букв) создаются по следующему правилу. Первая строка состоит из одного символа – латинской буквы «А». Каждая из последующих цепочек создается такими действиями: в очередную строку сначала записывается буква, чей порядковый номер в алфавите соответствует номеру строки (на i-м шаге пишется i-я буква алфавита), к ней слева дважды подряд приписывается предыдущая строка. Вот первые 4 строки, созданные по этому правилу:
2 . 222 . 32 22 2 . 22
А Б В Г
(1) A (2) AAB (3) AABAABC (4) AABAABCAABAABCD
B5 В системе счисления с некоторым основанием десятичное число 18 записывается в виде 30. Укажите это основание.
B6 У Толи есть доступ к сети Интернет по высокоскоростному одностороннему радиоканалу, обеспечивающему скорость получения информации 2 19 бит Латинский алфавит (для справки): ABCDEFGHIJKLMNOPQRSTUVWXYZ
в секунду. У Миши нет скоростного доступа в Интернет, но есть возможность получать информацию от Толи по низкоскоростному телефонному каналу со средней скоростью 2
Имеется задание: «Определить символ, стоящий в n-й строке на позиции 2
15 бит в секунду. Миша n–1 – 5, считая от
договорился с Толей, что тот будет скачивать для него данные объемом 5 Мбайт по высокоскоростному каналу и ретранслировать их Мише по низкоскоростному каналу. Компьютер Толи может начать ретрансляцию данных не раньше, чем им будут получены первые 512 Кбайт этих данных. Каков минимально возможный промежуток времени (в секундах) с момента начала скачивания Толей данных до полного их получения Мишей? В ответе укажите только число, слово «секунд» или букву «с» добавлять не нужно. левого края цепочки». Выполните это задание для n = 8
Часть 3
B9 В языке запросов поискового сервера для обозначения логической операции «ИЛИ» используется символ «|», а для логической операции «И» – символ «&». В таблице приведены запросы и количество найденных по ним страниц некоторого сегмента сети Интернет. Для записи ответов на задания этой части (С1–С4) используйте бланк ответов № 2. Запишите сначала номер задания (С1, С2 и т.д.), а затем полное решение. Ответы записывайте четко и разборчиво.
Запрос Найдено страниц C1
(в тысячах)
Крейсер | Линкор 7000 Требовалось написать программу, при выпол- нении которой с клавиатуры считываются коор- динаты точки на плоскости (x, y – действии- тельные числа) и определяется принадлежность этой точки заданной заштрихованной области (включая границы). Программист торопился и написал программу неправильно.
Крейсер 4800
Линкор 4500 0
Какое количество страниц (в тысячах) будет найдено по запросу Крейсер & Линкор? Считается, что все запросы выполнялись практически одновременно, так что набор страниц, содержащих все искомые слова, не изменялся за время выполнения запросов.
ПРОГРАММА НА ПРОГРАММА НА ПРОГРАММА НА СИ
B10 Сколько различных решений имеет уравнение ПАСКАЛЕ БЕЙСИКЕ
var x,y: real; begin readln(x,y); INPUT x, y IF y<=x THEN IF y<=-x THEN void main(void) { float x,y; scanf("%f%f",&x,&y);
((J → K) → (M / N / L)) / ((J / ¬K) → ¬(M / N / L)) / (M → J) = 1,
где J, K, L, M, N – логические переменные? В ответе не нужно перечислять все различные наборы значений J, K, L, M и N, при которых выполнено данное равенство. В качестве ответа нужно указать количество таких наборов. if y<=x then if y<=-x then if y>=x*x-2 then write('принадлежит') IF y>=x*x-2 THEN PRINT "принадлежит" ELSE PRINT "не принадлежит" if (y<=x) if (y<=-x) if (y>=x*x-2) printf("принадлежит");
else write('не принадлежит') end. ENDIF ENDIF ENDIF else printf("не принадлежит");
Не забудьте перенести все ответы в бланк ответов № 1. END }
Последовательно выполните следующее: 1) Приведите пример таких чисел x, y, при которых программа неправильно решает поставленную задачу.
2) Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, поэтому можно указать любой правильный способ доработки исходной программы.)
© 2011 Федеральная служба по надзору в сфере образования и науки РФ © 2011 Федеральная служба по надзору в сфере образования и науки РФ
Демонстрационный вариант ЕГЭ 2011 г. ИНФОРМАТИКА и ИКТ, 11 класс. (2011 - 19 / 33 )
C2 Дан целочисленный массив из 30 элементов. Элементы массива могут принимать значения от 0 до 1000. Опишите на русском языке или на одном из языков программирования алгоритм, который позволяет подсчитать и вывести среднее арифметическое элементов массива, имеющих нечетное значение. Гарантируется, что в исходном массиве хотя бы один элемент имеет нечетное значение. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.
Паскаль Бейсик
const N=30; N=30 DIM A(N) AS INTEGER
var a: array [1..N] of integer; i, x, y: integer; DIM I, X, Y AS INTEGER DIM S AS SINGLE FOR I = 1 TO N
s: real; begin for i:=1 to N do readln(a[i]); … INPUT A(I) NEXT I …
end. END
Си Естественный язык
#include <stdio.h> Объявляем массив A из 30 элементов. Объявляем целочисленные переменные I, X, Y. Объявляем вещественную переменную S. В цикле от 1 до 30 вводим элементы массива A с 1-го по 30-й. …
#define N 30 void main(void) {int a[N];
int i, x, y; float s; for (i=0; i<N; i++)
scanf("%d", &a[i]); …
}
В качестве ответа Вам необходимо привести фрагмент программы (или описание алгоритма на естественном языке), который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например, Borland Pascal 7.0) или в виде блок-схемы. В этом случае вы должны использовать переменные, аналогичные переменным, используемым в алгоритме, записанном на естественном языке, с учетом синтаксиса и особенностей используемого вами языка программирования.
C3 Два игрока играют в следующую игру. Перед ними лежат две кучки камней, в первой из которых 3, а во второй 4 камня. У каждого игрока неограниченно много камней. Игроки ходят по очереди. Ход состоит в том, что игрок или удваивает число камней в какой-то кучке или добавляет 4 камня в какую-то кучку. Игрок, после хода которого общее число камней в двух кучках становится больше 25, проигрывает. Кто выигрывает при безошибочной игре обоих игроков – игрок, делающий первый ход, или игрок, делающий второй ход? Каким должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
C4 На вход программе подается набор символов, заканчивающийся точкой (в программе на языке Бейсик символы можно вводить по одному в строке, пока не будет введена точка, или считывать данные из файла). Напишите эффективную, в том числе и по используемой памяти, программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая сначала будет определять, есть ли в этом наборе символы, соответствующие десятичным цифрам. Если такие символы есть, то можно ли переставить их так, чтобы полученное число было симметричным (читалось одинаково как слева направо, так и справа налево). Ведущих нулей в числе быть не должно, исключение – число 0, запись которого содержит ровно один ноль. Если требуемое число составить невозможно, то программа должна вывести на экран слово «NO». А если возможно, то в первой строке следует вывести слово «YES», а во второй – искомое симметричное число. Если таких чисел несколько, то программа должна выводить максимальное из них. Например, пусть на вход подаются следующие символы: Do not 911 to 09 do. В данном случае программа должна вывести YES 91019
Система оценивания экзаменационной работы по информатике и ИКТ
ЧАСТЬ 1
За правильный ответ на каждое задание части 1 ставится 1 балл. Если указаны два и более ответов (в том числе правильный), неверный
ответ или ответ отсутствует – 0 баллов.
№ задания Ответ № задания Ответ
А1 4 А10 2
А2 4 А11 2
А3 4 А12 1
А4 4 А13 4
А5 3 А14 1
А6 4 А15 1
А7 1 А16 3
А8 3 А17 1
А9 4 А18 3
ЧАСТЬ 2
За правильный ответ на задания В1–В10 ставится 1 балл, за неверный
ответ или его отсутствие – 0 баллов.
Ответ
В1 81
В2 7
В3 211211
В4 ВГАБ
В5 6
В6 1288
В7 Н
В8 С
В9 2300
В108
ЧАСТЬ 3
КРИТЕРИИ ПРОВЕРКИ И ОЦЕНКИ ВЫПОЛНЕНИЯ
ЗАДАНИЙ С РАЗВЕРНУТЫМ ОТВЕТОМ
Внимание!При выставлении баллов за выполнение задания в «Протокол проверки ответов на задания бланка № 2» следует иметь в виду, что, если ответ отсутствует (нет никаких записей, свидетельствующих о том, что экзаменуемый приступал к выполнению задания), то в протокол проставляется «Х», а не «0».
C1
Требовалось написать программу, при
выполнении которой с клавиатуры считываются координаты точки на плоскости (x,y – действительные
0 числа) и определяется
принадлежность этой точки заданной
заштрихованной области (включая границы). Программист торопился и написал программу неправильно.
ПРОГРАММА НА ПРОГРАММА НА ПРОГРАММА НА СИ
ПАСКАЛЕ БЕЙСИКЕ
var x,y: real; INPUT x, y void main(void)
begin readln(x,y); if y<=x then IF y<=x THEN IF y<=-x THEN IF y>=x*x-2 THEN { float x,y; scanf("%f%f",&x,&y); if (y<=x)
if y<=-x then if y>=x*x-2 then write('принадлежит') PRINT "принадлежит" ELSE PRINT "не принадлежит" if (y<=-x) if (y>=x*x-2) printf("принадлежит");
else write('не принадлежит') end. ENDIF ENDIF ENDIF else printf("не принадлежит");
END }
Последовательно выполните следующее: 1) Приведите пример таких чисел x, y, при которых программа неправильно решает поставленную задачу.
2) Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, поэтому можно указать любой правильный способ доработки исходной программы).
Содержание верного ответа
(допускаются иные формулировки ответа, не искажающие его смысл)
Элементы ответа:
1) Пример: x=2, y=2 (Любая пара (x,y), для которой выполняется: y>x или y>–x.)
2) Возможная доработка (Паскаль, разбиение области на две части прямой x=0): if (y>=x*x-2) and (y<=x) and (x>=0) or (x<=0) and (y<=-x) and (y>=x*x-2) then write('принадлежит') else write('не принадлежит') Возможная доработка (Си, разбиение на две пересекающиеся области): if (y>=x*x-2 && (y<=x || y<=-x)) printf("принадлежит"); else printf("не принадлежит");
Возможная доработка (Бейсик, отбрасывание части от большей области, используются вложенные условия): IF y >= x * x - 2 THEN IF NOT (y > x AND y > -x) THEN PRINT "принадлежит" ELSE PRINT "не принадлежит" ENDIF ELSE PRINT "не принадлежит" ENDIF Обратите внимание, что вариантов доработки может быть достаточно много, но обычно правильное описание заштрихованных областей в них представляет собой
или объединение двух (или более) возможно пересекающихся
областей,
или исключение одной области из другой.
При разделении области вдоль какой-либо линии точки, которые лежат на этой линии внутри области, могут быть причислены к одной части, к другой или к обеим (то есть, например, в приведенном решении на языке Паскаль одно из условий (x>=0) или (x<=0) может быть строгим). Могут быть и другие верные способы доработки.
Указания по оцениванию Баллы
Обратите внимание! В задаче требовалось выполнить три действия: указать пример входных данных, при которых программа работает неверно, и исправить две ошибки: 1. Неправильное использование условного оператора, в результате чего при невыполнении первого, второго или третьего условия программа не выдавала ничего (отсутствуют случаи ELSE). 2. Приведенным трем ограничениям не удовлетворяют точки плоскости, у которых (y>–x) и (y≥x
2 –2) и (y≤x), а также точки, у
которых (y>x) и (y≥x 2 –2) и (y≤–x).
Правильно выполнены все три действия. Исправлены обе ошибки. В работе (во фрагментах программ) допускается наличие отдельных синтаксических ошибок, не искажающих замысла автора решения. 3
1. Правильно выполнены два действия из трех (исправлены обе ошибки, но не указан/неправильно указан пример требуемых входных данных, либо правильно указан пример входных данных, программа правильно работает при большем числе случаев, чем исходная, но не при всех). Например, выдает «не принадлежит» и для всех точек, у которых (y>x) и (y>–x). При этом не допускается, чтобы программа неправильно работала при тех входных данных, при которых раньше работала правильно. ИСКЛЮЧЕНИЕ! При написании операций сравнения допускается одно неправильное использование строгих/нестрогих неравенств (считается несущественной ошибкой, погрешностью записи). Например, вместо (y<=x) используется (y<x) (даже если программа при этом стала неверно работать при тех входных данных, при которых раньше работала правильно). 2. Или выполнены все три действия, но при этом в логическом выражении неверно учтены приоритеты логических операций (не расставлены или неправильно расставлены скобки в выражениях). 2
Правильно выполнено только одно действие из трех. То есть, либо только приведен пример входных данных, либо он не приведен (или приведен неверно), но имеется программа, корректно работающая при большем количестве входных данных, чем исходная, но не при всех. При оценивании этого задания на 1 балл допускается не учитывать корректность работы программы на точках границ областей (вместо нестрогих неравенств в решении были использованы строгие неравенства, или наоборот). 1
Все пункты задания выполнены неверно (пример входных данных не указан или указан неверно, программа не приведена, либо приведенная программа корректно работает в не большем количестве случаев, чем исходная). 0
Максимальный балл 3
C2 Дан целочисленный массив из 30 элементов. Элементы массива могут принимать значения от 0 до 1000. Опишите на русском языке или на одном из языков программирования алгоритм, который позволяет подсчитать и вывести среднее арифметическое элементов массива, имеющих нечетное значение. Гарантируется, что в исходном массиве хотя бы один элемент имеет нечетное значение. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.
Паскаль Бейсик
const N=30; var N=30 DIM A(N) AS INTEGER DIM I, X, Y AS INTEGER
a: array [1..N] of integer; i, x, y: integer; s: real; DIM S AS SINGLE FOR I = 1 TO N INPUT A(I)
begin for i:=1 to N do readln(a[i]); … NEXT I …
end. END
Си Естественный язык
#include <stdio.h> #define N 30 Объявляем массив A из 30 элементов. Объявляем целочисленные переменные I, X, Y. Объявляем вещественную переменную S. В цикле от 1 до 30 вводим элементы массива A с 1-го по 30-й. …
void main(void) {int a[N]; int i, x, y;
float s; for (i=0; i<N; i++) scanf("%d", &a[i]);
… }
В качестве ответа Вам необходимо привести фрагмент программы (или описание алгоритма на естественном языке), который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например, Borland Pascal 7.0) или в виде блок-схемы. В этом случае вы должны использовать переменные, аналогичные переменным, используемым в алгоритме, записанном на естественном языке, с учетом синтаксиса и особенностей используемого вами языка программирования.
Содержание верного ответа
(допускаются иные формулировки ответа, не искажающие его смысл)
На языке Паскаль На языке Бейсик
x:=0; X = 0
y:=0; for i:=1 to N do if (a[i] mod 2=1) then begin Y = 0 FOR I = 1 TO N IF A(I) MOD 2 = 1 THEN
x:=x+a[i]; y:=y+1; end; X = X + A(I) Y = Y + 1 ENDIF
s:=x/y; writeln(s); NEXT I S = X / Y PRINT S
На языке Си На естественном языке
x=0; y=0; for (i=0; i<N; i++) if (a[i]%2==1) Записываем в переменные X и Y начальное значение, равное нулю. В цикле от первого элемента до тридцатого находим остаток от деления элемента исходного массива на два. Если этот остаток равен единице, то увеличиваем счетчик суммы X на значение текущего элемента массива, а счетчик количества Y на 1. Переходим к следующему элементу.После цикла производим деление счетчика суммы X на счетчик количества Y и записываем результат в переменную S. Выводим значение переменной S.
{ x=x+a[i]; y++; }
s=(float)x/y; printf("%f", s);
Указания по оцениванию Баллы
Предложен правильный алгоритм, выдающий верное значение. Допускается запись алгоритма на другом языке, использующая аналогичные 2
переменные. В случае, если язык
программирования использует типизированные переменные, описания переменных должны быть аналогичны описаниям переменных
на естественном языке. Использование
нетипизированных или необъявленных переменных возможно только
в случае, если это допускается языком
программирования, при этом количество переменных и их идентификаторы должны соответствовать условию задачи. В алгоритме,
записанном на языке программирования,
допускается наличие отдельных синтаксических ошибок, не искажающих замысла автора программы.
В любом варианте решения присутствует не более одной ошибки из числа следующих: 1
Значения переменных X и Y находятся верно, однако
среднее арифметическое считается неверно (например, производится действие X/N или неверно происходит преобразование типов при делении).
Неверно осуществляется проверка значения элемента
массива на нечетность.
Не инициализируются или неверно инициализируются
переменные X и Y.
Отсутствует вывод ответа. Используется переменная, не объявленная в разделе
описания переменных.
Не указано или неверно указано условие завершения
цикла.
Индексная переменная в цикле не меняется (например, в
цикле while).
Неверно расставлены операторные скобки.
Ошибок, перечисленных в п. 1–8, две или больше, или алгоритм сформулирован неверно. 0
Максимальный балл 2
C3 Два игрока играют в следующую игру. Перед ними лежат две кучки камней, в первой из которых 3, а во второй 4 камня. У каждого игрока
неограниченно много камней. Игроки ходят по очереди. Ход состоит в том, что игрок или удваивает число камней в какой-то куче или добавляет 4 камня в какую-то кучу. Игрок, после хода которого общее число камней в двух кучах становится больше 25, проигрывает. Кто выигрывает при безошибочной игре обоих игроков – игрок, делающий первый ход, или игрок, делающий второй ход? Каким должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
Содержание верного ответа
(допускаются иные формулировки ответа, не искажающие его смысл)
Выигрывает второй игрок. Для доказательства рассмотрим неполное дерево игры, оформленное в виде таблицы, где в каждой ячейке записаны пары чисел, разделенные запятой. Эти числа соответствуют количеству камней на каждом этапе игры в первой и второй кучках соответственно.
1 ход 2 ход 3 ход 4 ход
позиция Старто- вая варианты I-й игрок хода) (все (выигрыш- II-й игрок ный ход) проигрышных) непосредствен- (все варианты хода кроме I-й игрок но указать один из экзаменуемому (выигрышные вариантов) достаточно II-й игрок ходы, Пояснение
6, 4 12, 4 12, 8 12, 12 16, 8
16, 4 20, 4 16, 8
Любой
10, 12 следующий
6, 12 6, 16 ход
12, 12 первого
3, 4 3, 8 3, 12 3, 16 7, 16 3, 20 6, 16 является игрока
непосред-
7, 12 11, 12 7, 16 проигрыш- ственно
15, 4 19, 4 15, 8 ным
7, 4 11, 4
11, 8 15, 8
11, 12
Таблица содержит все возможные варианты ходов первого игрока. Из нее видно, что при любом ходе первого игрока у второго имеется ход, приводящий к победе.
Указания по оцениванию Баллы
Правильное указание выигрывающего игрока и его ходов со строгим доказательством правильности (с помощью или без помощи дерева игры). 3
Наличие в представленном решении одного из пунктов: 1. Правильное указание выигрывающего игрока, стратегии игры, приводящей к победе, при отсутствии доказательства ее правильности. 2. Правильно указан выигрывающий игрок, приведено дерево игры, но 2
отсутствует обоснование правильности выигрывающей
стратегии. 3. Правильно указан выигрыш второго игрока, рассмотрены все варианты хода первого игрока, для каждого из них правильно указан выигрывающий ответ второго игрока. Однако анализ игры не доведен до конца и отсутствует обоснование стратегии.
Наличие в представленном решении одного из пунктов: 1. Правильно указаны все варианты хода первого игрока и возможные ответы второго игрока (в том числе и все выигрышные), но неверно определены дальнейшие действия и неправильно указан победитель. 2. Правильно указан выигрыш второго игрока, но описание выигрышной стратегии неполно и для некоторых (больше одного, но не для всех) вариантов хода первого игрока правильно указан выигрывающий ответ второго игрока. 1
Задание не выполнено, или в представленном решении полностью отсутствует описание элементов выигрышной стратегии и отсутствует анализ вариантов первого-второго ходов играющих (даже при наличии правильного указания выигрывающего игрока). 0
Максимальный балл 3
C4 На вход программе подается набор символов, заканчивающийся точкой (в программе на языке Бейсик символы можно вводить по одному в строке, пока не будет введена точка, или считывать данные из файла). Напишите эффективную, в том числе и по используемой памяти, программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая сначала будет определять, есть ли в этом наборе символы, соответствующие десятичным цифрам. Если такие символы есть, то можно ли переставить их так, чтобы полученное число было симметричным (читалось одинаково как слева направо, так и справа налево). Ведущих нулей в числе быть не должно, исключение – число 0, запись которого содержит ровно один ноль.
Если требуемое число составить невозможно, то программа должна вывести на экран слово “NO”. А если возможно, то в первой строке следует вывести слово “YES”, а во второй – искомое симметричное число. Если таких чисел несколько, то программа должна выводить максимальное из них. Например, пусть на вход подаются следующие символы: Do not 911 to 09 do. В данном случае программа должна вывести YES 91019
Содержание верного ответа
(допускаются иные формулировки ответа, не искажающие его смысл)
Программа читает все входные символы до точки один раз, подсчитывая в массиве, хранящем 10 целых чисел, количество каждой из цифр. Сами входные символы при этом не запоминаются. Затем проверяется — сколько в этом массиве нечетных элементов. Если больше одного, то задача решения не имеет. При наличии решения сначала печатается половина имеющихся цифр 9 (если таковые имеются, в случае нечетного числа цифр – меньшая половина), затем 8 и т.д. до 0, потом печатается цифра, которая встречается во входных данных нечетное число раз, а затем – оставшаяся половина цифр 0 (если таковые имеются, в случае нечетного числа цифр – меньшая половина), 1, и т.д. до 9. Если никаких цифр, кроме 0, во входных данных нет, то задача имеет решение, только если этот ноль единственный. Если нулей четное число, а ненулевая цифра единственная, то решения не существует. Баллы начисляются только за программу, которая решает задачу хотя бы для одного частного случая (например, для строк, состоящих не более чем из 255 символов), или которая умеет только определять, имеет ли задача решение.
Пример правильной и эффективной программы на языке Паскаль:
var a:array['0'..'9'] of integer; c, c_odd: char;
i, k: integer; f: boolean; begin
for c:='0' to '9' do a[c]:=0; read(с); while c<>'.' do
begin if c in ['0' .. '9'] then a[c] := a[c] + 1; read(c);
end; k := 0; {количество цифр, встречающихся нечетное число раз} for c := '0' to '9' do if a[c] mod 2 = 1 then
begin k := k + 1; c_odd := c
end; f := (a['0'] = 1); for c := '1' to '9' do
if (a[c] > 1) or (a[c] = 1) and (a['0'] = 0) then f := true; if (k > 1)or not f then writeln('NO') else begin
writeln('YES'); for c := '9' downto '0' do for i := 1 to a[c] div 2 do
write(c); if k = 1 then write(c_odd);
for c := '0' to '9' do for i := 1 to a[c] div 2 do write(c);
end end.
Пример правильной и эффективной программы на языке Бейсик:
DIM k, i, j, iodd, a(9) AS INTEGER FOR i = 0 TO 9
a(i) = 0 NEXT INPUT c$
DO WHILE NOT (c$ = ".") IF c$ >= "0" AND c$ <= "9" THEN a(ASC(c$) - ASC("0")) = a(ASC(c$) - ASC("0")) + 1
ENDIF INPUT c$ LOOP
k = 0 IF a(0) = 1 THEN f = 1 ELSE f = 0 FOR i = 0 TO 9 IF a(i) MOD 2 = 1 THEN
k = k + 1 iodd = i END IF
IF i > 0 AND a(i) > 1 THEN f = 1 NEXT IF k = 1 AND a(0) = 0 THEN f = 1
IF k > 1 OR f = 0 THEN PRINT "NO" END
ENDIF PRINT "YES" FOR i = 9 TO 0 STEP -1
FOR j = 1 TO a(i) 2 PRINT i; NEXT
NEXT IF k = 1 THEN PRINT iodd; FOR i = 0 TO 9
FOR j = 1 TO a(i) 2 PRINT i; NEXT NEXT
END
Указания по оцениванию Баллы
Программа работает верно, т.е. определяет, имеет ли задача решение для любых входных данных произвольного размера, и строит максимальное искомое число, не сохраняя входные данные в строке или массиве символов. Программа просматривает входные данные один раз, в тексте программы не анализируется каждая цифра в отдельности. Допускается наличие в тексте программы одной синтаксической ошибки: пропущен или неверно указан знак пунктуации, неверно написано или пропущено зарезервированное слово языка программирования, не описана или неверно описана переменная, применяется операция, недопустимая для соответствующего типа данных (если одна и та же ошибка встречается несколько раз, то это считается одной ошибкой). 4
Программа работает верно, но входные данные запоминаются в массиве символов или строке, или входные данные считываются несколько раз. Возможно, каждая цифра обрабатывается явным образом (10 операторов IF, в том числе с использованием многоточия, или оператор CASE, содержащий 10 вариантов). Возможно, сохраненные входные данные сортируются одним из стандартных алгоритмов сортировки путем перестановки входных символов, или ответ формируется путем перестановки входных цифр. Допускается наличие от одной до трех синтаксических ошибок, описанных выше. Три балла также выставляется, если в эффективной программе, удовлетворяющей критериям выставления 4 баллов, есть одна ошибка, не относящаяся к алгоритму решения задачи в целом, например, ошибка в принципиально верно организованном вводе данных или в обработке числа, состоящего из одних нулей или из четного числа нулей и одной ненулевой цифры. 3
Программа работает в целом верно, эффективно или нет, но, 2
возможно, выводит значение не максимального искомого числа. Возможно, в реализации алгоритма содержатся 1–2 ошибки (используется знак «/» вместо «», «div» вместо «mod», выход за границу массива, перевод символов в числа, используется знак «<» вместо «<=», «or» вместо «and» и т.п.). Возможно, некорректно организовано считывание входных данных. Допускается
наличие от одной до пяти
синтаксических ошибок, описанных выше.
Программа, возможно, неверно работает при некоторых входных данных, например, при наличии цифры, которая встречается нечетное число раз. Возможно, выводит только «NO» или «YES» и не выводит искомое число, или выводит его неверно. При использовании сортировки допущены ошибки в ее реализации. Допускается до 4 различных ошибок в реализации алгоритма, в том числе описанных в критериях присвоения двух баллов. Допускается наличие от одной до семи синтаксических ошибок, описанных выше. 1
Задание не выполнено или выполнено неверно. 0
Максимальный балл 4
© 2011 Федеральная служба по надзору в сфере образования и науки РФ