Графические и телесные решения
Информатика
Классы. Часть 2
Поурочные разработки
Издание разработано при поддержке Отдела теории алгоритмов и математических основ кодирования Вычислительного центра им. А.А. Дородницына Российской академии наук (заведующий отделом — к. ф.-м. н. В. А. Варданян)
Москва «Просвещение»
Институт новых технологий
Содержание
Предисловие. 4
Способы решения задач. 5
Графические и телесные решения. 11
Комментарии к учебнику. 12
Урок «Длина цепочки». 12
Решение задач 1—6 из учебника. 12
Урок «Цепочка цепочек». 15
Списки и языки программирования. 15
Решение задач 7—13 из учебника. 17
Урок «Таблица для мешка (по двум признакам)». 19
Мешки-векторы.. 19
Решение задач 14— 18 из учебника. 21
Урок «Словарный порядок. Дефис и апостроф». 26
Словарный порядок. 26
Дефис и апостроф.. 27
Решение задач 19—26 из учебника. 29
Урок «Дерево. Следующие вершины, листья. Предыдущие вершины». 33
Решение задач 27—33 из учебника. 35
Уроки «Уровень вершины дерева». 37
Решение задач 34—45 из учебника. 38
Математическое словоупотребление. 38
Проект «Одинаковые мешки». 45
Несколько слов о работе над проектами. 45
Комментарии к проекту «Одинаковые мешки». 47
Первый этап проекта. 47
Второй этап проекта. 50
Уроки «Робик. Команды для Робика. Программа для Робика». 53
Программа для Робика. 54
Решение задач 46—64 из учебника. 55
Уроки «Перед каждой бусиной. После каждой бусины». 65
Решение задач 65—77 из учебника. 65
Проект «Лексикографический порядок». 72
О проекте. 72
Алфавитные линейки. 73
Словари для работы.. 74
Ход проекта. 75
Игры на словарный порядок. 91
Уроки «Склеивание цепочек». 92
Решение задач 78—89 из учебника. 93
Контрольная работа 1. 97
Урок «Выравнивание, решение необязательных и трудных задач». 99
Решение задач 90—102 из учебника. 99
Урок (и) «Путь дерева». 106
Ветвление. 106
Полный перебор и деревья. 107
Решение задач 103—115 из учебника. 108
Компьютерный проект «Определение дерева по веточкам и почкам» (только для компьютерного варианта изучения курса) 116
О проекте. 116
Работа с определителем.. 118
Уроки «Все пути дерева». 119
Решение задач 116—131 из учебника. 120
Урок «Деревья потомков». 128
Решение задач 132—138 из учебника. 129
Проект «Сортировка слиянием». 132
Несколько слов о сортировке информации. 132
Описание проекта. 134
Повторение алфавита. 137
Основной проект. 139
Несколько слов о параллельной организации работы.. 141
Ещё несколько слов о параллельной работе. 147
Список всех слов (в словарном порядке) 154
Дополнительные мини-проекты: сортировка без обязательного упорядочения. 158
Заключение. 162
Уроки «Робик. Конструкция повторения». 163
Решение задач 139—154 из учебника. 163
Уроки «Склеивание мешков цепочек». 172
Решение задач 155—176 из учебника. 173
Урок «Таблица для склеивания мешков». 184
Решение задач 177—183 из учебника. 185
Проект «Турниры и соревнования». 1 часть. 187
Общее обсуждение. 187
Решение задач из тетради проектов. 189
Проект «Турниры и соревнования». 2 часть. 192
Проведение турниров в классе. 192
Дополнение. Игра в камешки. 193
Заключение. 194
Контрольная работа 2. 194
Урок «Выравнивание, решение необязательных и трудных задач». 197
Решение задач 184—201 из учебника. 197
Компьютерный проект «Живая картина» (только для компьютерного варианта изучения курса) 207
О проекте. 208
Общее обсуждение. 208
Знакомство с возможностями использования готовых форм Черепашки. 208
Индивидуальное обсуждение с ребятами эскизов картинок. 211
Планирование работ. 213
Рисование фона. 213
Использование готовых форм Черепашки. 214
Рисование (корректировка) сложных изображений в графическом редакторе. 214
Программирование движения с помощью Черепашки. 215
Просмотр и обсуждение готовых работ. 215
Планирование курса 3 класса. 216
(для бескомпьютерного варианта изучения) 216
Предисловие
Курс «Информатика. 3 класс» Рудченко Т. А., Семёнова А. Л. является продолжением курсов «Информатика. 1 класс» и «Информатика. 2 класс» тех же авторов и соответственно частью комплекта «Информатика. 1—4 классы» (Рудченко Т. А., Семёнов А. Л.). Курс рассчитан на 1 час в неделю, всего на 34 учебных часа. Как и в 1—2 классах, вы можете выбрать бескомпьютерный или компьютерный вариант работы (варианты соответствующих планирований приведены в конце данной книги). В первом случае дети будут работать только с печатными материалами курса (учебник, рабочая тетрадь и тетрадь проектов). Во втором случае, кроме печатных материалов, можно использовать компьютерную составляющую курса.
Все уроки делятся на обычные и проектные. На обычных уроках дети работают с учебником и рабочей тетрадью, а в случае компьютерного варианта изучения — ещё и с компьютерными уроками. Проекты делятся на компьютерные и бескомпьютерные. В первом случае дети будут выполнять их на компьютере, во втором — будут работать с тетрадью проектов. Компьютерную составляющую для курса «Информатика. 3 класс» можно найти на сайте http://info.seminfo.ru.
Более подробное описание всего курса в целом можно найти в поурочных разработках к курсу «Информатика. 1 класс».
В 3 классе дети продолжают работу с базовыми объектами математической информатики (и всей современной математики) — цепочками и мешками. В курсе появляются новые объекты — деревья и цепочки цепочек. С одной стороны, эти объекты, как говорят математики, являются естественным обобщением цепочек. С другой стороны, они отражают определённые важные свойства мышления, языка и окружающего мира. Объекты и события, входящие в цепочки, могут иметь собственную внутреннюю структуру, а ход событий необязательно будет однозначно заранее предопределён и может «ветвиться». Например, в цепочке дней каждый день является самостоятельной цепочкой событий. Другой пример: отпуск будет проходить так или иначе в зависимости от погоды и других условий.
Дети познакомятся с простейшим исполнителем — Робиком. Робик будет нашим главным партнёром в изучении соответствия между планом и его выполнением.
Способы решения задач
При решении задач из учебника, как и во многих других ситуациях в человеческой практике и в сфере информационных технологий, могут быть использованы различные общие стратегии. Попробуем описать некоторые из них. При этом мы будем использовать «взрослую» терминологию, которую не вводим явно в учебнике. Но вы можете пользоваться этой терминологией при разборе задач с детьми, постепенно приучая их к правильному словесному описанию своей деятельности. По нашему мнению, заучивать абстрактные формулировки стратегий дети не должны — это бесполезно и даже вредно. Определённая польза состоит именно в том, что учащийся открывает эти стратегии самостоятельно, возможно, с помощью учителя, многократно применяет их на практике, постепенно осмысливает и начинает использовать более сознательно и систематически.
Метод последовательного перебора. Метод состоит в том, чтобы последовательно и систематически, в некотором смысле «механически», перебирать все возможные варианты решения. Говорят также о «переборе вариантов» или «переборе возможностей», и мы именно так и будем говорить. Иногда (и не так уж редко) метод последовательного перебора приводит к полному решению задачи. Чаще это позволяет накопить экспериментальный материал для того, чтобы сузить пространство перебора или начать последовательно и направленно идти к ответу, используя уже другие методы.
Часто одна или несколько из рассматриваемых (перебираемых) возможностей сама в свою очередь состоит из последовательности выборов. Например, пытаясь найти выигрышную стратегию в игре, нужно рассматривать все возможные варианты первого хода, затем все возможные варианты хода противника, затем все варианты нашего второго хода и т. д. Тогда для перебора возможностей следует организовать перебор различных последовательностей выборов. Эту ситуацию естественно представлять в виде дерева (с деревьями дети познакомятся в 3 классе). Если при переборе вершин дерева мы окажемся в тупике (это значит, что на данном пути решения нет), возвращаемся на шаг назад и выбираем другую возможность (другую ветку дерева). Исследовав все ветки, выходящие из какой-то вершины, и не найдя решения, возвращаемся ещё на шаг назад и выбираем другую ветку дерева на предыдущем уровне.
Стратегия полного перебора позволяет найти решение, если оно есть. Почему же люди не решают таким образом все задачи? Ответ состоит в том, что перебор почти всегда занимает слишком много времени. Более того, иногда множество, из которого выбираются объекты, бесконечно. Предположим, что для решения какого-то уравнения мы перебираем все целые числа, подставляем их в уравнение, а у уравнения вообще нет решения: в этом случае процесс перебора будет продолжаться бесконечно долго!
Одним из самых замечательных результатов «большой» информатики является открытие того факта, что большое число задач, для которых пока найден только переборный метод решения, в некотором смысле одинаковы (такие задачи иногда называют «переборными»). Специалисты считают, что, скорее всего, ни для одной из них более быстрого способа нахождения ответа не существует. Если бы быстрый способ всё же нашёлся для одной переборной задачи, то он сразу же подошёл бы для всех остальных. Этот замечательный факт был обнаружен на рубеже 70-х гг. ХХ в. одновременно советскими и американскими математиками. Вот пример такой переборной задачи: «Дан мешок натуральных чисел и ещё одно число. Можно ли найти в мешке несколько чисел так, чтобы их сумма была равна этому данному?»
Идея метода полного перебора в какой-то степени противостоит распространённым школьным идеям о правильном первом шаге в решении, об искусственном приёме и т. п. Однако противоречия здесь нет, в действительности и в человеческой практике и при решении учебных задач полезно, а иногда и необходимо использовать и ту и другую стратегии.
Метод проб и ошибок. Идея метода состоит в том, что для накопления экспериментального материала необязательно последовательно и систематически перебирать все возможные варианты ответа. Можно попробовать сделать какой-нибудь шаг, а если выяснится, что результат не достигнут, т. е. произошла ошибка, то сделать какой-то другой шаг. И так пробовать, пока не найдётся ответ, или не сузится пространство перебора, или не найдётся иной подход к решению. Иногда даже один, взятый наугад, случайный вариант ответа (и не подошедший в качестве ответа) позволяет получить достаточно информации, чтобы затем планомерно построить настоящий ответ. Иногда надо попытаться взять случайный, но типичный, или самый простой, или самый сложный объект и попытаться исследовать его и т. д.
Такой способ является очень естественным для детей, хотя обычно и не поощряется школой. В названии способа имеется слово «ошибка», но ничего плохого в этом нет. Нужно приучить ребёнка к тому, что без ошибок никакая человеческая деятельность не обходится, ошибаться не позорно, но надо учиться замечать и исправлять свои ошибки. Это вообще исключительно важно: школа часто выстраивает перед ребёнком идеал безошибочности, что вредит ему в дальнейшей учёбе и в жизни. Возможность ошибиться и затем исправить, найти свою ошибку психологически важна для ребёнка, надо его не ругать за пробы и перебор вариантов, а хвалить.
Данный метод отличается от предыдущего именно тем, что в нём перебор «непоследовательный», так сказать, «хаотичный». Он уже не гарантирует нахождения ответа. Более того, часто бывает, что использующий этот метод человек много раз выбирает бесперспективный путь, «топчется на месте». Почему же всё-таки люди используют такую стратегию, а мы рассматриваем её в своих книгах? Оказывается, что при переборе наугад у человека быстрее включаются на сознательном и подсознательном уровнях алгоритмы выявления закономерностей, позволяющие классифицировать объекты и сокращать перебор, искать более прямой путь к решению. При переборе возможностей накапливается опыт, показывающий, какого типа действия стоит пробовать, а какого нет. И в решении задачи возникнет более экономная стратегия, а может даже появиться и готовое решение задачи, не базирующееся на пробах, а исходящее из понимания того, «как всё на самом деле устроено». Чтобы научить детей правильно использовать такой метод, надо выработать у них привычку анализировать процесс перебора, спрашивать у них, почему они решили попробовать тот или иной вариант, почему вариант не подошёл, все ли подходы учтены и использованы.
В комментариях к задачам учебника мы обсуждаем конкретные закономерности, которые можно найти и использовать в задачах.
Метод Монте-Карло. Можно не стараться угадать, какой объект попробовать в методе проб и ошибок, а действовать наугад, «с закрытыми глазами». Пробуя такие случайные объекты, можно собрать важную информацию, например составить представление о том, сколько решений у данной задачи среди всех возможных, а не просто найти одно решение. Название «Монте-Карло» — это не фамилия автора метода, а отсылка к игорному (случайному) выбору. Чтобы получить случайный объект, например цепочку нулей и единиц, можно бросать монету. Чтобы получить цепочку целых чисел от 1 до 6, можно бросать игральную кость. Чтобы научить компьютер такому случайному выбору, пишут специальные программы. Они позволяют компьютеру создавать объекты (например, числа), похожие на случайные (действительно случайный выбор современному компьютеру недоступен).
Метод сборки снизу вверх (метод «Разделяй и властвуй»). Этот метод состоит в том, чтобы выделить в задаче частичные подзадачи, построить их решения, а потом из них собрать всё решение. С упомянутым подходом тесно связано проектирование сверху вниз, при котором мы сначала описываем нужные нам свойства всего объекта (например, всей программы или всего здания, которое нужно построить), затем разбиваем этот объект на части (например, выделяем подпрограммы или отдельные части здания) так, что если эти части имеют правильные свойства (например, работают или построены правильно), то весь объект будет решением задачи. Так можно поступать и далее, измельчая получающиеся объекты до тех пор, пока не станет совсем ясно, как построить самые мелкие. Название «Разделяй и властвуй» связано с латинским изречением «Dividio et conquar», соответствующим стратегии управления, при которой начальник (император) справляется (расправляется) с отдельными частями управляемой системы (провинциями, вассалами, завоёванными территориями) и в результате управляет целым. При изучении курса дети будут знакомиться с различными применениями метода «Разделяй и властвуй» и будут не раз строить объекты сверху вниз. В вычислительных информатических задачах этот метод реализуется как «метод динамического программирования».
Описанные выше стратегии и методы, конечно, далеко не исчерпывают всех подходов, накопленных человечеством, но они довольно часто будут оказываться полезными детям при решении задач курса, и вы можете их обсуждать с теми учениками, которые начинают активно и систематически их применять.
В задачах и проектах мы уделим много внимания демонстрации способов решения разных типов задач. С одной стороны, формирование эффективных способов решения (эффективных алгоритмов) — важная часть современной науки информатики. С другой стороны, просто рассказывать детям о разных способах и даже демонстрировать их — это дело неэффективное и даже бесполезное. Дети должны не просто быть проинформированы о способах, скажем, сортировки объектов, но и действительно пользоваться ими как при решении задач курса, так и в жизни. Чтобы достичь этого, для начала нужно у каждого ребёнка создать достаточную мотивацию использования того или иного способа действия. Работая с задачами курса, дети постоянно сталкиваются с необходимостью как-то структурировать, планировать свои действия. Не случайно в комментариях к задачам мы часто просим вас дать возможность каждому ребёнку поработать с задачей самостоятельно, даже если вы заранее знаете, что она будет трудна для него. Опыт самостоятельной работы над задачей, поиск решения, изобретение своих собственных способов решения — одни из самых развивающих интеллектуальных действий. При такой работе постепенно формируется ощущение необходимости выработки стратегии решения.
Только после того, как ребёнок накопил достаточный (самостоятельный!) опыт, он сможет понять и принять те методы работы, которые вы ему предложите, скажем, на проектном уроке или при обсуждении решения очередной задачи.
Усвоенный алгоритм работы, например сортировки или попарного сравнения объектов, потом можно реализовывать в формализованном виде с абстрактными математическими объектами. Эта общая схема — отработка алгоритма на видимых осязаемых объектах с последующим переносом на абстрактные математические объекты — используется почти по всему курсу. В 4 классе дети продолжат заниматься проблемами планирования и построения стратегии на примере различных игр.
Графические и телесные решения
Как и раньше, в курсе 3 класса практически все задачи формулируются и решаются в графической форме. Объекты наглядны: это символы (бусины, буквы, цифры, фигурки) и их сочетания (цепочки, мешки, деревья). Действия также имеют графическое представление: это установление соответствия между объектами, соединение объектов. Такое представление объектов, операций и отношений в большей степени статично: проделанные действия нелегко отменить или изменить. Многие задачи особенно удобно решать, если бусины или другие объекты, встречающиеся в задаче, можно разложить на столе, двигать и перекладывать, при необходимости соединять в цепочки, складывать в мешки, т. е. перейти от графического представления к телесному. При этом эксперимент, в частности перебор объектов и их сочетаний, можно производить уже не в уме и не выписывая или вырисовывая символы на бумаге (что долго и утомительно), а легко передвигая объекты на столе и выстраивая их в нужных сочетаниях, как это происходит в разнообразных играх (домино, шахматы). Особенно важно, что при этом легко отменить то или иное действие или последовательность действий. Это важно, в частности, когда перебираются различные возможные действия и отбрасываются те из них, которые (иногда после нескольких шагов) не дали нужного результата. Именно эти возможности были нами использованы при создании компьютерной поддержки курса.
При бескомпьютерном варианте работы с курсом можно взять специальный лист с бусинами в тетради проектов, из которого можно вырезать бусины и использовать их для решения задач. Для работы с фигурками удобно скопировать страницу и вырезать из неё нужные объекты.
К некоторым задачам приложен специальный лист вырезания, содержащий все фигурки. Можно просто изготовить необходимое число маленьких карточек для применения в различных задачах и, если потребуется, написать на них нужные названия фигурок, которые являются бусинами. Учитель имеет возможность поступить по-разному: например, предложить детям, которые решают задачи быстрее и увереннее, сначала попытаться решить задачу без вырезанных бусин, а если это не получится, воспользоваться ими. Тем, кто решает медленнее, можно сразу рекомендовать работать с вырезанными бусинами. Начиная с некоторого момента лучше дождаться предложения работать с вырезанными бусинами от самих детей и после этого договориться о разных моделях работы. В любом случае предпочтительнее, чтобы каждый ребёнок решал задачу так, как он хочет.
Комментарии к учебнику
Урок «Длина цепочки»
Курс 3 класса начинается с новой, но простой темы. К настоящему моменту ребятам хорошо знакомо понятие «цепочка» и другие понятия, связанные с порядком бусин в цепочке. На листе определений «Длина цепочки» новым для детей является только название понятия «длина цепочки». Содержательно дети уже с ним работали, но описывали ситуацию другими словами, например: «Цепочка состоит из 5 бусин». Используя понятие «длина цепочки», дети могут сказать то же самое проще, это позволит короче сформулировать условия задач.