БЛОК «АЛГОРИТМИЗАЦИЯ И ПРОГРАММИРОВАНИЕ»
Данный блок содержит самый объемный и сложный материал курса информатики, знания и умения по которому представлены на всех трех уровнях сложности. На уровне воспроизведения знаний проверяется фундаментальный теоретический материал, такой как: - понятие алгоритма, его свойств, способов записи; - основные алгоритмические конструкции; - основные элементы программирования. Материал на проверку сформированности умений применять свои знания в стандартной ситуации входит во все три части экзаменационной работы. По данному тематическому блоку это следующие умения: - использовать стандартные алгоритмические конструкции при программировании; - формально использовать алгоритмы, записанные на естественных и алгоритмических языках, в том числе на языках программирования. Материал на проверку сформированности умений применять свои знания в новой ситуации входит во вторую и третью части работы. Это следующие сложные умения: - анализировать текст программы с точки зрения соответствия записанного алгоритма поставленной задаче и изменять его в соответствии с заданием; - реализовывать сложный алгоритм с использованием современных систем программирования. Задания занимают следующие позиции в вариантах КИМ: А6, А7, А8, А20, В3, В6, С1-С4.
Проанализировав КИМ по информатике можно отметить, что знания и умения, связанные с использованием основных алгоритмических конструкций, выявлялись как заданием на исполнение и анализ отдельных алгоритмов, записанных в виде блок-схемы, на алгоритмическом языке или на языках программирования, так и заданиями на составление алгоритмов для конкретного исполнителя (задание с кратким ответом) и анализ дерева игры. Приведем пример решения типичного задания на исполнение алгоритма, сформулированного на естественном языке. Пример: Цепочки символов (строки) создаются по следующему пра вилу. Первая строка состоит из одного символа — цифры «1». Каждая из последующих цепочек создается такими действиями: в очередную строку дважды записывается цепочка цифр из предыдущей строки (одна за другой, подряд), а в конец приписывается еще одно число — номер строки по порядку (на i -м шаге дописывается число « i »). Вот первые 4 строки, созданные по этому правилу: 1)1 2)112 3)1121123 4)112112311211234 Какая цифра стоит в седьмой строке на 121-м месте (считая слева направо)? Решение: Найдем длину седьмой строки. По условию, длина каждой последующей строки увеличивается в 2 раза, по сравнению с предыдущей, плюс еще один символ — цифра, обозначающая порядковый номер самой строки. Получается, что длина строк составит: 1) 1 элемент в строке; 2) 1x2 + 1 = 3 элемента в строке; 3) 3x2 + 1 = 7; 4) 7x2 + 1 = 15; 5) 15x2+1 = 31; 6) 31x2 + 1=63; 7) 63x2 + 1 = 127 элементов в строке. Требуется найти 121-й элемент в строке длиной в 127 символов. Это означает, что нам нужен седьмой элемент с конца. Поскольку в конец строки на каждом шаге добавляется его номер (совпадающий с номером формируемой строки), то последние семь символов 7-й строки будут 1234567. Таким образом, седьмой символ с конца — единица. Ответ: 1.
Для быстрого и успешного выполнения рассмотренного задания важно было не механически выполнить алгоритм, а понять закономерность, которую он выражает, и, воспользовавшись ей, найти решение. Важное замечание: Практически во всех заданиях на исполнение алгоритмов можно избежать большого объема рутинной работы, выявив закономерность, реализуемую алгоритмом.
Высоким уровнем сложности обладают задания, в которых требуется построить дерево игры по заданному алгоритму и обо сновать выигрышную стратегию. При выполнении таких заданий надо не только верно указать выигрывающего игрока и его стратегию, но и дать ей строгое обоснование, перебрав все варианты ходов обоих игроков, возможные при реализации одним из них своей выигрышной стратегии. Пример: Два игрока играют в следующую игру. Имеются три кучки камней, содержащих соответственно 2, 3, 4 камня. За один ход разрешается или удвоить количество камней в какой-нибудь кучке, или добавить по два камня в каждую из трех куч. Предполагается, что у каждого игрока имеется неограниченный запас камней. Выигрывает тот игрок, после чьего хода в какой-нибудь кучке становится не менее 15 камней или во всех трех кучках суммарно становится не менее 25 камней. Игроки ходят по очереди. Выясните, кто выигрывает при правильной игре, — первый или второй игрок. Решение (развернутый ответ): Для решения задачи составим таблицу (дерево развития игры при разных продолжениях). В колонке 0 показано начальное состояние игры (вершина дерева игры), в колонке 1 показаны 4 возможных состояния игры после 1-го хода 1-го игрока, в колонке 2 показано 16 возможных состояний игры после 1-го хода 2-го игрока, далее дерево игры не ведется, а проводится анализ уже рассчитанных состояний игры. Если 1-й игрок сделает свой первый ход 2,3,4 —>4,3,4, то 2-й игрок при правильной игре сделает ход 4,3,4 —>4,6,4, что приводит к проигрышу 1-го игрока (т.к. из состояния (4,6,4) 1-й игрок может своим ходом перевести игру в одно из четырех состояний — (8,6,4), (4,12,4), (4,6,8), (6,8,6), и для любого из этих состояний найдется ход 2-го игрока, дающий ему выигрыш, например, по критерию S>25 ). Если 1-й игрок сделает свой первый ход 2,3,4 —>2,6,4, то 2-й игрок при правильной игре сделает ход 2,6,4 —> 4,6,4, что, как мы только что видели, приводит к выигрышу 2-го игрока. Если 1-й игрок сделает свой первый ход 2,3,4 —>2,3,8, то его проигрыш очевиден, так как 2-й игрок, как указано в таблице, добьется выигрывающего состояния игры 2,3,16. Наконец, если 1-й игрок сделает свой первый ход 2,3,4 —> 4,5,6, то он выигрывает игру, т.к. на любой из четырех возможных ответов 2-го игрока (см. табл.) есть выигрывающий ход 1-го игрока. Таким образом, при правильной игре выигрывает 1-й игрок (при этом его первый ход должен быть 2,3,4 —>4,5,6)
При решений заданий на исполнение алгоритма в среде фор мального исполнителя, прежде всего — требуется уяснить систему команд исполнителя алгоритма, т.е. как записывается каждая команда, что означают ее параметры (если они есть) и каков должен быть результат ее выполнения. Пример: Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существуют две команды: Вперед n, вызывающая передвижение Черепашки на п шагов в направлении движения. Направо т, вызывающая изменение направления движения на т градусов по часовой стрелке. 0 т 180. (Вместо п и т должны стоять целые числа). Запись: Повтори 5 [Команда1 Команда2] означает, что последовательность команд в квадратных скобках повторится 5 раз. Какое число необходимо записать вместо п в следующем алгоритме: Повтори 6 [Вперед 40 Направо п], чтобы на экране появился правильный пятиугольник.
Решение: Сумма внутренних углов правильного пятиугольника вычисляется по формуле (р-2)х180/р, где р =5. Поэтому величина одного внутреннего угла будет равна (5 - 2) х 180/5 = 108°. А угол поворота Черепашки в вершине пятиугольника будет равен углу, смежному с внутренним углом, т.е. 180-108=72°. Черепашка прочертит на экране 6 отрезков, но последний отрезок полностью совпадет с первым, так как после пятого выполнения цикла Черепашка полностью обернется вокруг своей оси (72x5 = 360°) и окажется в той же точке, что и изначально. Так что на экране появится правильный пятиугольник. Ответ: 72.
Для решения задач на исполнение алгоритма, записанного в виде блок-схемы или программы на алгоритмическом языке, нужно знать и уметь использовать основные алгоритмические конструкции: следование, ветвление, цикл. Для непосредственного исполнения алгоритма рекомендуется вести таблицу переменных, в которой отображается изменение их значений после каждого шага. Пример: Определите значение переменной т после выполнения фрагмента алгоритма:
Примечание: знаком :=обозначена операция присваивания. Решение Способ 1 Составим таблицу переменных, добавив в нее для удобства результаты вычисления логических выражений.
Ответ: 3.
Способ 2 Внимательно проанализировав блок-схему, можно сделать вывод, что она реализует известный алгоритм Евклида нахождения наибольшего общего делителя двух чисел, который для 81 и 48 равен трем. (81 = 34, 48 =3x16.) Ответ: 3. При выполнении заданий на выполнение алгоритмов, запи санных на языках программирования, следует учесть, что приведенные в таблице тексты программ на разных языках эквивалентны, поэтому учащийся должен выбрать тот язык, который ему наиболее знаком и далее работать только с ним, не обращая внимания на остальные столбцы таблицы. Пример: Определите значение целочисленных переменных а и b после выполнения фрагмента программы:
1)a =22, b=20 2)a =4682, b=4680 3)a =8246, b=246 4)a =470, b=468 Решение: Составим таблицу переменных:
Ответ: 2.
Приведем пример решения задания на исполнение алгоритма, в котором используются функции работы над текстовыми строками. Для успешного выполнения таких заданий учащийся должен владеть понятием «тип данных» и уметь применить его на практике. Пример: В приведенном ниже фрагменте алгоритма, записанном на алгоритмическом языке, переменные а, b , с имеют тип «строка», а переменные i , k — тип «целое». Используются следующие функции: Длина (а) — возвращает количество символов в строке а. (Тип «целое».) Извлечь (а, i) — возвращает i-тый (слева) символ в строке а. (Тип «строка».) Склеить (а, b)— возвращает строку, в которой записаны сначала все символы строки а, а затем все символы строки b . (Тип «строка».) Значения строк записываются в одинарных кавычках. (Например, а :='дом'.)
Фрагмент алгоритма: i := Длина (а) k :=1 b:= ‘П’ пока i>0 нц с := Извлечь ( a , i ) b := Склеить (b, с ) i:=i - k кц
Какое значение будет у переменной b после выполнения вышеприведенного фрагмента алгоритма, если значение переменной а было 'РОЗА'? 1) 'ПАЗ' 2) 'ПАЗОР' 3) 'ПОЗА' 4) 'ПРОЗА'
Решение: В данном случае для решения задачи достаточно знания обычного алгоритмического языка и описания функций, приведенного в условии. Выполним программу по шагам, занося значения переменных в таблицу:
Ответ: 2.
К теме «Алгоритмизация и программирование» относятся также задания на проверку умения написать короткую (10—15 строк) простую программу обработки массива на языке программирования или записать алгоритм на естественном языке. Подчеркнем, что в данном задании от ученика не обязательно требуется писать программу на языке программирования. Для получения высшего балла за задание достаточно сформулировать корректный алгоритм на естественном языке. Для решения этой группы заданий полезно усвоить следующие элементарные алгоритмы: 1) Поиск минимального и максимального элементов в массиве с определением их номеров. 2) Поиск в массиве элемента, удовлетворяющего заданному условию с определением его номера. 3) Подсчет числа элементов массива, удовлетворяющих за данному условию: 4) Вычисление суммы элементов числового массива. 5) Вычисление суммы элементов числового массива, удовлетворяющих заданному условию. 6) Поиск в массиве подпоследовательности убывающих (возрастающих) элементов. После того как алгоритм начерно написан, рекомендуется его протестировать на небольших (4—5 элементов) массивах исходных данных. Желательно проверить корректность работы алгоритма в следующих ситуациях: 1)элементы массива различны и не упорядочены; 2)элементы массива различны и упорядочены по возрастанию; 3)элементы массива различны и упорядочены по убыванию; 4)элементы массива равны между собой; 5)иные «экстремальные» случаи.
БЛОК «ОСНОВЫ ЛОГИКИ»
В соответствии с обобщенным планом экзаменационной работы по информатике на уровне воспроизведения знаний проверяется такой фундаментальный теоретический материал, как основные элементы математической логики. Материалы на проверку сформированности умений применять свои знания в стандартной ситуации входит в первый две части экзаменационной работы. Это умения: - составлять и преобразовывать логические выражения; Формировать для логической функции таблицу истинности и логическую схему. Материал на проверку сформированности умений применять свои знания в новой ситуации входит во вторую часть работы. Это умение преобразовывать сложные логические высказывания. Задания занимают следующие позиции в варианте: А9-А11, В2, В4.
Для успешного выполнения заданий ЕГЭ по основам логики, учащиеся должны твердо усвоить символику и определения (таблицы истинности) трех основных логических операций (инверсия, конъюнкция, дизъюнкция), а также импликации. Кроме того, необходимо знать и уметь применять при работе с логическими выражениями основные законы логики. Полезно знать также формулу для выражения импликации через отрицание и логическое сложение:
Кроме того, желательно знать следующие свойства конъюнкции, дизъюнкции и импликации:
Пример: Символом F обозначено одно из указанных ниже логических выражений от трех аргументов: X , Y , Z . Дан фрагмент таблицы истинности выражения F :
Какое выражение соответствует F? 1) 2) 3) 4) Решение Способ 1 Последовательно подставим первую строку таблицы истинности во все варианты ответов: l) , а по условию F для этого набора значений равно 0. Первый ответ не подходит. 2) , по условию F = 0. Второй ответ пока подходит. 3) , по условию F =0. Третий ответ пока подходит. 4) , по условию F = 0. Четвертый ответ пока подходит. Отбросив первый вариант ответа, подставим теперь вторую строку во все оставшиеся: 2) , по условию F = 1. Второй ответ отпадает. 3) , по условию F =1. Третий ответ пока подходит. 4) , по условию F = 1. Четвертый ответ пока подходит. Подставим теперь третью строку в оставшиеся два варианта ответов: 3) , по условию F = 0. Третий ответ подходит для всех строк. 4) , по условию F = 0. Четвертый ответ не подходит. Ответ: 3.
Способ 2 Составим фрагмент таблицы истинности всех перечисленных в ответах логических выражений для различных наборов переменных X, Y, Z:
Заметим, что значения истинности одинаковы для логических выражений F и при любых значениях аргументов X, Y, Z из данного фрагмента, следовательно, эти логические выражения равносильны. Ответ № 3.
Популярное: Организация как механизм и форма жизни коллектива: Организация не сможет достичь поставленных целей без соответствующей внутренней... Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение... Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (270)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |