Волкова Ризида Анверовна
ПРОГРАММИРОВАНИЕ В СРЕДЕ ЛОГО МИРЫ Часть 1. Задачи для начинающих - 5 класс
Тольяттинская академия управления (ТАУ) — локальная образовательная система, включающая в себя детский сад, начальную школу, среднюю школу, университет, аспирантуру и центр подготовки управленческих кадров, существует уже 12 лет. Нами накоплен большой опыт преподавания информатики и информационные технологий на всех этапах обучения. С концепцией преподавания этого предмета в средней школе можно познакомиться по адресу: http://ito. edu. ru/2003/I/2/I-2-3312. html. Более подробную информацию об изучаемые курсах можно найти на сайте: http:// www.taom.ru/school poets (на главной странице есть ссыип,ки на документы1). В течение 10 лет мы1 обучаем учеников 3-6-х классов основам программирования с помощью интегрированной среды1 «Лого Миры1».
Язык Лого - полноценный язык программирования, допускающий возможность создания настоящих, графически оформленных, работоспособных программ. Обучение в среде Лого развивает математическую интуицию и геометрические представления, формирует алгоритмический, структурный, логический и комбинаторный типы мышления, повышает творческую активность и самостоятельность школьников. Лого привлекает и тем, что программирование из скучной дисциплины превращается в интересную игру, в процессе которой происходит быстрое усвоение основных понятий и навыков программирования.
Мы выделяем 5 этапов в изучении Лого:
1 этап (3 класс) - программирование объектов инструментальной среды Лого (текстовое окно, кнопка, бегунок, черепашка). На этом этапе команды, как правило, записываются в диалоговых окнах объектов, иногда на листе процедур (но пока еще только линейные алгоритмы). Во время прохождения этапа ведется работа над одним сквозным проектом, который начинается с простого рисунка, затем постепенно обогащается и усложняется. Результатом этого этапа может быть рекламный ролик или живая книга.
2 этап (5 класс) - программирование графики, то есть рисование всевозможных геометрических фигур. Вводятся новые типы алгоритмов - циклический и разветвляющийся. Графика хороша тем, что циклы и ветвления хорошо представлены на рисунке -например, забор, состоящий из дощечек. Вводится понятие процедуры и процедуры с параметрами, так как детям непременно хочется создавать универсальные программы, а не переписывать много раз одно и то же с небольшими изменениями.
3 этап (5 класс) - математические расчеты. Прохождение этого этапа начинается с создания игры, где сначала идет повторение предыдущего материала, а потом начинают возникать ситуации, когда детям хочется, чтобы их игра задавала количество
попыток и вела счет очкам. По ходу работы над проектом идет очень подробное объяснение как это сделать, оказывается помощь практически каждому ученику, но в результате они понимают, что им жизненно необходимо это знать и уметь. Затем дается большое количество разных задач - расчет модуля числа, различные «прибавлялки», «умножалки», кассовые аппараты, калькулятор, игра «Кто надует больший шар». Заканчивается все это большой совместной работой с математиками - построение столбчатых и круговых диаграмм. На этом этапе важно координировать свою работу с математиками, можно проводить интегрированные уроки. В задачах активно используются математические понятия - проценты, дроби, углы и т. д.
4 этап (6 класс) - работа со словами и списками. На этом этапе до минимума сводится коллективное обсуждение метода решения задач, создания блок-схемы. Идет более подробное изучение алгоритмов на более абстрактных задачах. Ориентация - на полную самостоятельность решения задач. На этом этапе можно координировать свою работу с преподавателями русского языка. Мы проводили интегрированные уроки (ученики готовили разные тесты на уроках информатики, затем на уроках русского языка проверяли знания друг друга).
5 этап (6 класс) - создание собственного компьютерного проекта. Он может быть и не очень сложным с точки зрения программирования, но, несомненно, должен быть завер-
шен, иметь товарный вид. Цель этого курса - научить вести работу над большим компьютерным проектом (подготовка технического задания, распределение работы на этапы, распределение времени, самостоятельное освоение нового материала по информатике и в предметной области, взаимодействие с заказчиком, организация коллективной работы, доведение работы до конца, презентация проекта). Очень хотелось, чтобы этот этап не завершался - дети должны создавать проекты, которые будут востребованы на других предметах, и тогда они имели бы возможность сопровождать свои программные продукты, совершенствовать их и гордиться ими.
Для удобства работы программа по изучению Лого разбита на несколько курсов (см. таблицу 1). Последовательность прохождения менять нельзя, можно варьировать количество часов.
Нам очень нравится работать с этой инструментальной средой. Ученики тоже быстро увлекаются разработкой своих программ, одним нравится программировать, другим красиво оформлять. Проектная работа позволяет каждому ученику реализоваться в своем направлении. Часто бывает, что «крутые программисты» неспособны довести свою работу до конца, оформить ее, придать «товарный» вид. «Дизайнеры» занимаются этим с удовольствием. После уроков у нас работает мастерская Лого. Мастерская -это не факультатив, там нет строго заданной программы, строго определенного времени. В качестве «мастеров» выступают преподаватели и некоторые «продвинутые» ученики. Идеи, которые возникают у детей, двигают и развивают нас, преподавателей.
Таблица 1.
Класс Этап Название курса Часы Комментарии
3, 5 1 Введение в компьютерное проектирование 20 Можно изучать с 3-го класса
6 2, 3 Алгоритмы вокруг нас 34 Курс имеет электронную поддержку -задачники с подсказками
6 4 Программирование списков 20 Довольно сложный курс, от него можно отказаться, если выделено мало часов
6 5 Я создаю проект 14 Очень важный курс, лучше выделить больше времени
ЗАДАЧИ ДЛЯ НАЧИНАЮЩИХ, 5 класс ДЛЯ НАЧИНАЮЩИХ № 1 Задача 1-1. Цветочек вырос
Маленький цветочек (черепашка ч1) начинает расти и становится большим.
Используйте команду Лого: нрз число - новый размер черепашки.
Решение: это росток
ч1, нф "цветок нрз 20 жди 2 нрз 40 жди 2 нрз 60 жди 2 нрз 80 жди 2 нрз 100 конец
Задача 1-2. Катись, катись, колобок
Колобок катится, переворачиваясь по дорожке из точки «А» в точку «В».
Предварительно: в редакторе форм нарисуйте колобка. Сделайте еще 3 копии формы колобка и поверните их так, чтобы получился колобок вверх ногами, колобок на правом боку, колобок на левом боку. Решение:
это катись_катись колобок, нм [-277 -76] нк 90
повтори 7 [вп 20 нф "кол1 вп 20 жди 2 нф "кол2 вп 20 жди 2 нф "кол3 вп 20 жди 2 нф
"кол4 жди 2]
конец
Задача 1-3. Самолет исчезает в облаках
Самолет летит по листу слева направо и исчезает в облаках, затем снова появляется в небе.
Предварительно: Нарисуйте облако синего цвета в центре листа проекта.
Запрограммируйте белый цвет так, чтобы при попадании на него самолет исчезал (используйте команду сч), а на синем цвете опять появлялся (используйте команду пч).
Решение: это полет
сам, нк 90 всегда [вп 20 жди 1] конец
В диалоговом окне синего цвета в поле «инструкция» написать сч (спрячь черепашку). В диалоговом окне белого цвета в поле «инструкция» написать пч (покажи черепашку).
ДЛЯ НАЧИНАЮЩИХ № 2
Задача 2-1. Времена года
Продемонстрируйте смену времен года на одном дереве. Предварительно: в редакторе форм скопируйте форму лиственного дерева. Сделайте 3 копии. Одну - с желтыми листьями, вторую - заснеженную, третью с голыми ветками.
Решение:
это времена_года
дерево, повтори 4 [нф "лето жди 5 нф "осень жди 5 нф "зима жди 5 нф "весна жди 5] конец
Задача 2-2. Паук на паутине
Паучок (с именем Чук) перемещается из точки А в точку В, оставляя за собой след - тонкую черную паутину (линию).
Используйте команду Лого: по - сокращенно от Перо Опусти.
Решение: это паутина
Чук, пп нм [260 180] нк 180
по повтори 7[вп 20 нф "паук1 жди 2 вп 20 нф "паук2 жди 2] пп конец
Задача 2-3. Джип увяз в грязи
Джип перемещаеться по листу слева направо и исчезает в грязи (луже черного цвета).
Предварительно: запрограммируйте черный цвет так, чтобы при попадании на него джип исчезал (используйте команду сч), а на белом цвете опять появлялся (используйте команду пч).
Решение: это поехали авто, нф "джип нк 90 всегда [вп 10 жди 1] конец
В диалоговом окне черного цвета в поле «инструкция» написать сч (спрячь черепашку). В диалоговом окне белого цвета, в поле «инструкция» написать пч (покажи черепашку).
ДЛЯ НАЧИНАЮЩИХ № 3 Задача 3-1. Загадочный замок
В темноте стоит замок с темными окнами, затем открываются ворота, в окнах появляется свет, ворота закрываются.
Предварительно: в редакторе форм подготовьте различные формы замка. Одну - с закрытыми воротами и темными окнами, вторую - с открытыми воротами и темными окнами, третью - с открытыми воротами и светлыми окнами, четвертую - с закрытыми воротами и светлыми окнами.
повтори 4 [нф "замок1 жди 5 нф "замок2 жди 5 нф "замокЗ жди 5 нф "замок4 жди 10] конец
Задача 3-2. Черепашка обходит свои владения
Черепаха обходит свои плантации, оставляя след.
Используй команды: вп X (вперед), нп X (новый курс), по (перо опусти), пп (перо подними).
Решение: это обход
черепаха, нм [-65 -125] по нк 0 вп 100 нк 90 вп 100 нк 180 вп 100 нк 270 вп 100 пп конец
Задача 3-3. Светофор
Управляйте движением автомобиля с помощью светофора. Нарисуйте светофор. Запрограммируйте красный цвет на нажатие мышки - останов. Зеленый цвет на нажатие мышки -всегда [вп 10]. Желтый цвет - системный звук - Clarinet (просто пишите это слово в поле «инструкция»).
Решение:
В диалоговом окне красного цвета в поле «мышка» написать останов. В диалоговом окне желтого цвета в поле «мышка» написать Clarinet. В диалоговом окне зеленого цвета в поле «мышка» написать всегда [вп 10].
ЧЕРЕПАШКА РИСУЕТ Задача 1. Ковш
Нарисовать ломаную линию в форме ковша. Длина фрагмента 30 пикселей.
это ковш -
по пр 90 вп 30 лв 90 вп 30 пр 90 вп 30 пр 90 вп 30
конец -1
Задача 2. Забор
Нарисовать забор, используя процедуру, составленную для предыдущей задачи. Решение:
это ряд - - -
по нц 45 повтори 3 [ковш по пр 90 пр 180] конец
Задача 3. Цифра восемь
Нарисовать цифру восемь, используя процедуру для рисования ломаной линии в форме ковша.
Решение: -
это восемь повтори 2 [ковш]
конец _
Задача 4. Крест
Нарисовать крест, используя процедуру для рисования ло- -
маной линии в форме ковша.
Решение: это крест
повтори 4 [ковш вп 30 лв 90] конец
Задача 5. Шестеренка
Нарисовать шестеренку, используя процедуру для рисования ломаной линии в форме ковша
Решение: это шестерня
повтори 10 [ковш лв 180 пр 360 / 20] конец
Решение:
Задача 6. Сложная фигура
Нарисовать шестеренку, используя процедуру для рисования цифры восемь (см предыдущие задачи).
Решение:
Задача 9. Венок
Нарисовать венок, используя процедуру, которая рисует пушинку.
Решение: это венок
повтори 20 [нц 45 вп 30 пушинка пр 360 / 20] конец
Задача 10. Треугольник
Нарисовать равносторонний треугольник со стороной 20 пикселей.
Решение:
это треугольник повтори 3 [вп 20 пр 120] конец
это фигура1
повтори 10 [восемь нд 30 пр 360 / 10] конец
Задача 7. Пушинка
Написать процедуру, которая рисует пушинку. Решение:
это пушинка нц 99
сч повтори 10 [вп 30 нд 30 пр 360 / 10] конец
Задача 8. Снежинка
Нарисовать снежинку, используя пушинку, из предыдущей задачи.
Решение:
это снежинка по сч нц 13
повтори 9 [вп 30 пушинка нд 30 пр 360 / конец
процедуру, которая рисует
9]
Задача 11. Бантик
Нарисовать бантик, используя процедуру, которая рисует треугольник, из предыдущей задачи.
Решение: это бантик
треугольник пр 180 треугольник конец
Задача 12. Ромбик
Нарисовать ромб, используя процедуру, которая рисует треугольник.
Решение: это ромб
треугольник треугольник конец
пр 60 лв 60
Задача 13. Шестиугольник из треугольников
Нарисовать шестиугольник, используя процедуру, которая рисует треугольник.
Решение: это шестиугольник
пр 30 повтори 6 [треугольник пр 60] конец
Задача 14. Катушка
Нарисовать катушку, используя процедуру, которая рисует бантик.
Решение: это катушка сч лв 30 бантик пр 120 вп 20 лв 120 бантик конец
Задача 15. Треугольник из 3-х треугольников
Нарисовать большой треугольник, используя процедуру, которая рисует треугольник.
Решение:
это треугольникЗ лв 90
повтори 3[треугольник пр 60 вп 20 пр 60] конец
Задача 16. Трубка
Нарисовать трубку, используя процедуру, которая рисует ромб. Решение: это трубка
лв 90 ромб пр 60 нд 21 лв 60 ромб пр 60 ромб конец
Задача 17. Забор из досок
Написать процедуру, которая рисует одну доску забора. Затем написать процедуру, которая рисует забор, используя процедуру, которая рисует
доску.
Решение: это доска
нк 0 по вп 100 пр 45 вп 10 пр 90 вп 10 пр 45 вп 100 пп нк 90 вп 10
конец /\/\/\/\/\/\/\/\/\/\
это забор повтори 10 [доска] конец
Уважаемые читатели!
Часть материалов к этой статье выполнена в форме раздаточные материалов и
содержится на диске в рс!/-файлах.
Это материалы1 трех видов:
1. Задачи с решениями: Задача 1. Рисуем оси координат. Задача 2. Рисуем координатную сетку. Задача 3. Рисуем жирафа по координатам. Задача 3. Рисуем спираль (рекурсия).
2. Задачи без решений: Задача 4. Рисуем гусеницу по координатам. Задача 5. Рисуем зайца по координатам. Задача 6. Рисуем Петрушку по координатам. Задача 7. Рисуем белку по координатам. Задача 8. Рисуем бабочку по координатам. Задача 9. Рисуем Буратино по координатам. Задача 10. Рисуем собаку по координатам.
3. Серии задач, часть из которые приведена с решениями, а другие надо найти самостоятелыно:
Задача 1. Черепашка рисует квадраты1. Задача 2. Черепашка рисует равносторонние многоугольники.
© Наши авторы, 2004. Our authors, 2004.
Волкова Ризида Анверовна, руководитель группы1 информационные технологий общеобразовательного учебного заведения Тольяттинской академии управления.