Цель:
Приобретения умений, связанных с составлением простейших программ в среде «Логомиры».
Задачи:
Обучающие:
- знакомство с "детским программированием" в среде "Логомиры";
- формирование алгоритмического мышления.
Воспитательные:
- воспитание интереса к творческой работе;
- воспитание коллективизма при оформлении совместных творческих работ.
Развивающие:
- развитие внимания при составлении программ и процедур;
- развитие творческих способностей при создании анимаций.
Ожидаемые результаты:
- знание правил работы в среде "Логомиры";
- приобретение навыков составления процедур для анимации объектов;
- выполнение творческих работ: анимированных рисунков.
1. Знакомство с черепашкой
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i2dcf3f8884f1fa04/1371546414/std/image.jpg)
Инструмент создает новую черепашку.
У каждой черепашки есть рюкзак, в котором содержатся сведения, которые относятся именно к этой черепашке. Мы будем рассматривать те сведения (характеристики), которые нам пригодятся для выполнения заданий.
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/ibd6d27e37f6d42ef/1371546727/std/image.jpg)
Щелкните правой кнопкой мыши на черепашке, а в появившемся меню - на пункте Открыть рюкзак.
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i70b5fcbf2df36f4d/1371547223/std/image.jpg)
Отметьте закладку Состояние:
Перейдем на закладку "Правила", в которой мы указываем, по каким правилам двигается черепашка
.
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/iaf31d82d6a3ecf46/1371547602/std/image.gif)
Посмотрите содержание инструкции Щелчок:
Эта инструкция, которую выполнит черепашка, если вы щелкнули на ней левой кнопкой мыши. У инструкции есть два режима выполнения - Один раз или Много раз. Это самая простая анимация. Если мы хотим задать более сложный алгоритм движения, то следует написать процедуру и вписать ее название в это же верхнее окошко.
1. Работа с фоном
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/ie25113098e3c90f4/1371547826/std/image.jpg)
Затем щелкните на одной из кнопок клипарта - Фон, одиночные картинки или наборы:
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i237cb13050628fa2/1371547921/std/image.jpg)
Перетащите картинку, которую вы выбрали, из панели на лист. Картинка появится на листе:
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/ib2911b70e358923b/1371548003/std/image.jpg)
Вы можете изменить размер картинки или переместить ее с помощью рамки и квадратов по углам картинки. Удерживайте нажатой клавишуShift и тащите картинку за углы, если хотите сохранить пропорции. Если выделение вдруг пропало, нажмите клавишу Ctrl и с помощью мыши выделите нужную область:
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i7fb051a67c60e189/1371548229/std/image.jpg)
Если вы сделали изображение желаемого размера и поместили его в нужное место листа, выберите в меню пункт Штамп:
Теперь картинка является частью листа проекта. Вы можете рисовать поверх нее, вырезать ее и т. д.
Когда готов фон, можно перейти к работе с черепашками.
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i8239f529b13f9e7c/1371548313/std/image.jpg)
2. Формы черепашки
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/ibd2302c7f15c849c/1371548430/std/image.gif)
Эта форма черепашки – исходная. Она показывает, куда направлена черепашка, и изменяет ее цвет в соответствии с цветом пера. Таким образом, иногда легче использовать исходную форму черепашки во время подготовки программы, а затем переключиться на окончательные формы (картинки) после завершения подготовки. Чтобы вернуться обратно к форме черепашки, щелкните на черепашке на панели инструментов , а затем на черепашке, форму которой вы хотите изменить.
Обычно формы черепашки находятся в Палитре, в окне поверх листа альбома. Если вы перетащите форму на лист, она отштампуется на листе в виде картинки. Если вы хотите дать черепашке новую форму - например, запрограммировать или анимировать черепашку - то сделайте одно из следующих действий:
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i30e80c1976a6edd6/1371548793/std/image.jpg)
- перетащите форму на черепашку (или щелкните сначала на форме в палитре, а потом на черепашке);
- перетащите форму в закладку Формы в рюкзак;
Более подробно о редактировании фона и форм можно прочитать в справке по ЛогоМирам.
3. Процедуры
1. Основные понятия
Процедуры служат для описания алгоритмов поведения черепашек.
Процедура – это озаглавленный именем список инструкций (команд).
Первая строка процедуры состоит из слова Это и названия процедуры.
Последняя строка процедуры состоит из слова КОНЕЦ.
Пример процедуры движения вправо:
Это движение
Нк 90
Вп 10 жди 1
Конец
Эта процедура говорит черепашке о том, что она должна соблюдать курс, соответствующий движению вправо (курс 90). Команды Вп (вперед) и жди показывают, что черепашка должна проходить 5 шагов, а потом останавливаться на 1 мгновение. Фактически число, стоящее в команде ВП, определяет скорость движения черепашки во время анимации.
Используя эту процедуру, можно оживить несколько черепашек с разными картинками.
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i65eb1c77af51f94f/1371548760/std/image.jpg)
1. Если для движения требуется одна картинка (машина, самолет, автобус и т.п.):
а) нажать на картинку в клипарте одиночных форм и щелкнуть по черепашке.
б) Открыть рюкзак и указать на закладке Правило: Движение и Много раз.
в) Щелкнув по черепашке левой кнопкой мыши, получим анимацию.
2. Если для движения требуется несколько форм, то необходимо выделить с помощью нажатой кнопки Shift все картинки, участвующие в движении, и щелкнуть мышкой по черепашке, после чего выполнить п. б.
Все черепашки будут двигаться с одинаковой скоростью.
Чтобы можно было устраивать «гонки» черепашек, можно ввести бегунки, которые помогают регулировать скорость их движения.
2. Процедуры с параметрами
Параметры в процедуре нужны, чтобы можно было изменять значения, которые в ней использованы.
Например, чтобы процедуру Движение можно было использовать для черепашек, которые могут двигаться с разной скоростью, надо вместо значения скорость записать ее буквенное обозначение (как в алгебре или физике). Можно использовать буквы как русского, так и английского алфавита. Обозначим скорость буквой V.
Процедура движение изменится следующим образом:
Это движение V
Нк 90
Вп :V жди 1
Конец
Вы видите, что рядом с именем процедуры появилось обозначение скорости, а вместо значения скорости в команде ВП 10 также использовано обозначение, но ему предшествует двоеточие. Обратите внимание, что после ВП ставится пробел, а между двоеточием и буквой V пробела нет. Это обязательное правило нарушать нельзя, иначе черепашка не сможет нас понять и не будет выполнять нужные действия.
Из описания процедуры неясно, с какой скоростью должны двигаться черепашка. Для того, чтобы задать конкретную скорость, в рюкзаке черепашки рядом с именем процедуры следует указать значение скорости, т.е. в окошке с именем процедуры мы запишем Движение 10 илиДвижение 15. Соответственно разные черепашки будут двигаться с разной скоростью.
3. Использование бегунков для регулирования скорости.
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/ib79ec33501c8a5f9/1371548936/std/image.gif)
Выберите инструмент создания бегунка и щелкните в любом месте листа.
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i57b43d2be1f01711/1371548999/std/image.gif)
Откроется диалоговое окно:
Датчик - имя бегунка - сообщает его текущее значение. Например, если вы создадите бегунок с указанными выше параметрами, то вы сможете использовать следующую инструкцию.
покажи бегунок1
50
50
вперед бегунок1
В качестве входного параметра в команде впередпередано значение бегунка.
Имя бегунка и значения можно отредактировать.
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i18720443afa3a3c8/1371549058/std/image.gif)
Например, можно назвать бегунок Скоростьи указать значения: минимум – 0, максимум – 30, а исходную скорость можно сделать 2.
В рюкзаке черепашки-машинки запишем:Движение скорость. Таким образом мы указали, что машинка будет выполнять процедуру Движение, а скорость можно регулировать с помощью бегунка скорость.
Параметры бегунка можно редактировать, если по нему щелкнуть мышкой и выбрать «Редактировать».
Для модели «Гонки» можно выбрать несколько черепашек и для каждой создать свой бегунок. Имена бегунков должны быть разные, они вписываются в рюкзаки соответствующих черепашек.
Теперь в модели остается одно неудобство: по каждой черепашке надо щелкать, чтобы ее запустить. Чтобы они начали двигаться одновременно, надо создать кнопку «Пуск».
4. Создание кнопок
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i2c81f8804725e2b4/1371549154/std/image.gif)
Выберите инструмент для создания кнопок и щелкните в любом месте листа.
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i8a7b83ad5b86080e/1371549209/std/image.gif)
Откроется диалоговое окно. Дайте кнопке имя (это имя будет отображаться на кнопке на листе).
Инструкция каждая показывает, что она относится ко всем черепашкам, находящимся на листе. Вкл означает запуск анимации.
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i21fafe53f3898166/1371549266/std/image.gif)
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i8c4f06462e34e1d8/1371549319/std/image.jpg)
Вообще говоря, кнопке можно приписать сложные действия, которые следует оформить в виде процедуры, а на кнопке указать имя этой процедуры.
5. Датчики
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/ica47a69de2b5f80c/1371549429/std/image.jpg)
До сих пор мы пользовались только командами (инструкциями). Мы давали команды, а черепашка их выполняла.
Но некоторые параметры черепашка «знает» и может сообщить их нам. Например, координаты точки поля, в которой она находится, или цвет поля, на котором она стоит.ъ
Возьмите одну черепашку и поставьте ее в любое место. Напишите в поле команд (слева внизу) команды:
Покажи х_коор
Покажи у_коор
На каждую инструкцию Покажи черепашка ответит числом, которое соответствует нужной координате: Х или У.
Теперь включите панель графического редактора ЛогоМиров:
Нарисуйте несколько закрашенных кругов разного цвета. Обратите внимание, что когда вы выбираете цвет закрашивания, он отображается внизу в квадрате, а под ним указывается номер этого цвета, принятый в ЛогоМирах.
Теперь поставьте черепашку по очереди на каждый закрашенный круг и напишите в поле команд:
Покажи ЦП
Черепашка ответит числом, соответствующим цвету поля.
Имена х_коор, у_коор и ЦП являются датчиками координат и цвета поля. Их можно использовать в командах, которые проверяют выполнение условия и выполняют разные действия в зависимости от результатов проверки.
6. Команда Если. Проект «Остановка на финише».
Вернемся к модели гонок. В рассмотренной задаче машинки двигались с разной скоростью, но останавливались только при нажатии кнопки Стоп.
Нарисуем фон для модели Гонки таким образом, чтобы справа у нас получилась финишная линия. Поставим на нее черепашку и определим с помощью команды Покажи х_кооркоординату Х, на которой должны остановиться машинки (например, 300).
В процедуре Движение черепашка проходит 10 шагов и повторяет процедуру заново, т.к. в рюкзаке указано, что процедура выполняется много раз. Но когда машинка достигает координаты 300, она больше двигаться не должна.
Запишем процедуру следующим образом:
Это движение
Нк 90
Если х_коор < 300 [вп 10 жди 1]
Конец
Что будет происходить в этом случае? Черепашка, прежде чем сделать очередные 10 шагов, проверяет, выполняется ли условие х_коор < 300, т.е. она берет значение датчика х_коор и сравнивает его с числом 300. Если оно оказывается меньше, она делает 10 шагов и возвращается к проверке. Как только значение х_коор оказывается больше или равно 300, команды, записанные в скобках, не выполняются. Так работает команда Если.
Проект Остановка на финише будет выглядеть примерно так:
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/icdf5a183cc66fd90/1371549524/std/image.jpg)
Обратите внимание на следующее:
1. Слева и справа от знака < пробелы обязательны.
2. В этом примере процедура называется Машина. Имя процедуры само по себе не имеет значения. Важно, чтобы это имя совпадало с именем, указанным в рюкзаке каждой черепашки.
7. Команда Если_иначе. Проект «Кораблик».
В рассмотренном случае в зависимости от истинности условия команды, заключенные в скобки либо выполнялись, либо никаких действий не производилось.
В некоторых проектах возможен случай, когда в зависимости от выполнения условия должны производиться разные действия.
Рассмотрим проект-шутку «Кораблик». На фоне из клипарта нарисуем «озеро» цветом 105.
Зададим движение таким образом, чтобы по траве черепашка двигалась в виде машинки, а по озеру – в виде кораблика, т.е. задача сводится к смене форм, надеваемых на черепашку.
В рюкзаке черепашки откроем закладку Формы и занесем туда две картинки: машинку и кораблик. Соответственно эти формы будут иметь номера 1 и 2. Для смены формы используется команда НФ (новая форма). Поскольку картинки имеют разный размер, воспользуемся командойнов_размер с указанием разных размеров для разных форм. Сигналом для смены формы является значение датчика ЦП, равное 105. Команда Если_иначе позволяет задать два варианта смены форм:
Если_иначе цп = 105 [нф 2 нов_размер 50] [нф 1 нов_размер 30]
При истинности условия цп = 105 выполняются команды, указанные в первых скобках, в противном случае – команды из вторых скобок.
Поскольку в проекте участвует только одна черепашка, запишем процедуру в рюкзаке.
Обратите внимание: команда записана в одну строку, несмотря на то, что при наборе часть ее может перенестись на следующую строку.
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i8c87c50c7621c2ba/1371549621/std/image.jpg)
8. Генератор случайных чисел. Проект «Сад».
В любой компьютерной игре используется программа – генератор случайных чисел.
Такой датчик-генератор существует и в среде ЛогоМиры.
Наберите в поле команд:
Покажи сл 10
Если выполнять эту команду несколько раз подряд, мы увидим, что черепашка отвечает нам различными числами в пределах 10. Если изменить число, т.е. поменять параметр датчика сл, то и пределы изменения чисел изменятся. Этот численный параметр показывает, что случайное число будет появляться в пределах от 0 до заданного числа.
Воспользуемся датчиком случайных чисел для составления процедуры сад.
Будем считать, что координата Х изменяется от -350 до +350, а У – от -200 до +200.
Если задать координаты с помощью команд
нов_х сл 350
нов_у сл 200,
то черепашка будет попадать только в правую верхнюю четверть поля, т.к. мы не сможем получить отрицательные координаты. Поэтому будем задавать пределы, вдвое превышающие максимальную координату, а потом отнимать максимальную координату:
нов_х (сл 700) - 350
нов_у (сл 400) - 200
Вспомним, что команда штамп оставляет на поле отпечаток формы черепашки.
Получим следующую процедуру:
Это сад
нов_х (сл 700) - 350
нов_у (сл 400) - 200
штамп
конец
Если задать в рюкзаке параметр много раз, то картинки быстро закроют все поле. Поэтому ограничим количество «растений в саду» и запишем в рюкзаке: повтори 100 [сад].
![](http://u.jimdo.com/www52/o/s01f24ecc88a12981/img/i1c772825652ae0aa/1371549712/std/image.jpg)
Обратите внимание: чтобы запустить проект заново, наберите в поле команд СГ, чтобы стереть предыдущий результат.
Можно разделить сад на клумбы: слева «посадить» одни цветочки, справа – другие.
Воспользуемся тем же приемом, что и в проекте «Кораблик». Занесем в рюкзак черепашки две формы цветов. А проверять в команде Если_иначе будем не цвет поля, а координату Х.
Кроме того, внесем еще одно усовершенствование: нарисуем до середины поля зеленую травку, а выше – голубое небо и будем «сажать» цветочки только на траву. Для этого придется проверять еще и значение координаты У и штамповать картинки только когда координата У будет отрицательной. Можно воспользоваться клипартом фонов.
Получим следующий проект:
0 коммент.:
Отправить комментарий