Мы хотим, чтоб Интернет был Вам другом много лет! Будешь знать Семь правил этих- смело плавай в интернете.
RSS

Логомиры

Цель:
Приобретения умений, связанных с составлением простейших программ в среде «Логомиры».
Задачи:
Обучающие:
  • знакомство с "детским программированием" в среде "Логомиры";
  • формирование алгоритмического мышления.
Воспитательные:
  • воспитание интереса к творческой работе;
  • воспитание коллективизма при оформлении совместных творческих работ.
Развивающие:
  • развитие внимания при составлении программ и процедур;
  • развитие творческих способностей при создании анимаций.
Ожидаемые результаты:
  • знание правил работы в среде "Логомиры";
  • приобретение навыков составления процедур для анимации объектов;
  • выполнение творческих работ: анимированных рисунков.

1. Знакомство с черепашкой

В ЛогоМирах черепашки используются везде. Вы можете рисовать с их помощью, применять их в качестве кнопок, делать из них анимационных героев. У каждой черепашки множество характеристик: свое имя, месоположение, направление, размер пера, цвет пера, форма, различные инструкции, которые она умеет выполнять.






Инструмент создает новую черепашку.
У каждой черепашки есть рюкзак, в котором содержатся сведения, которые относятся именно к этой черепашке. Мы будем рассматривать те сведения (характеристики), которые нам пригодятся для выполнения заданий.




















Щелкните правой кнопкой мыши на черепашке, а в появившемся меню - на пункте Открыть рюкзак.




Отметьте закладку Состояние:
























Перейдем на закладку "Правила", в которой мы указываем, по каким правилам двигается черепашка

.




Посмотрите содержание инструкции Щелчок:
Эта инструкция, которую выполнит черепашка, если вы щелкнули на ней левой кнопкой мыши. У инструкции есть два режима выполнения - Один раз или Много раз. Это самая простая анимация. Если мы хотим задать более сложный алгоритм движения, то следует написать процедуру и вписать ее название в это же верхнее окошко.



1. Работа с фоном

В ЛогоМирах есть набор (палитры) клипартов - картинок, которые мы можем использовать как фон и как "одежду" для черепашек. Набор клипартов можно видеть справа. если окна Клипарта не видно, щелкните на кнопке панели инструментов.
Затем щелкните на одной из кнопок клипарта - Фон, одиночные картинки или наборы:
Перетащите картинку, которую вы выбрали, из панели на лист. Картинка появится на листе:
Вы можете изменить размер картинки или переместить ее с помощью рамки и квадратов по углам картинки. Удерживайте нажатой клавишуShift и тащите картинку за углы, если хотите сохранить пропорции. Если выделение вдруг пропало, нажмите клавишу Ctrl и с помощью мыши выделите нужную область:
Если вы сделали изображение желаемого размера и поместили его в нужное место листа, выберите в меню пункт Штамп:
Теперь картинка является частью листа проекта. Вы можете рисовать поверх нее, вырезать ее и т. д.
Когда готов фон, можно перейти к работе с черепашками.

2. Формы черепашки


Эта форма черепашки – исходная. Она показывает, куда направлена черепашка, и изменяет ее цвет в соответствии с цветом пера. Таким образом, иногда легче использовать исходную форму черепашки во время подготовки программы, а затем переключиться на окончательные формы (картинки) после завершения подготовки. Чтобы вернуться обратно к форме черепашки, щелкните на черепашке на панели инструментов , а затем на черепашке, форму которой вы хотите изменить.



Обычно формы черепашки находятся в Палитре, в окне поверх листа альбома. Если вы перетащите форму на лист, она отштампуется на листе в виде картинки. Если вы хотите дать черепашке новую форму - например, запрограммировать или анимировать черепашку - то сделайте одно из следующих действий:
  • перетащите форму на черепашку (или щелкните сначала на форме в палитре, а потом на черепашке);
  • перетащите форму в закладку Формы в рюкзак;
Более подробно о редактировании фона и форм можно прочитать в справке по ЛогоМирам.

3. Процедуры

1. Основные понятия

Процедуры служат для описания алгоритмов поведения черепашек.
Процедура – это озаглавленный именем список инструкций (команд).
Первая строка процедуры состоит из слова Это и названия процедуры.
Последняя строка процедуры состоит из слова КОНЕЦ.
Пример процедуры движения вправо:

Это движение
Нк 90
Вп 10 жди 1
Конец

Эта процедура говорит черепашке о том, что она должна соблюдать курс, соответствующий движению вправо (курс 90). Команды Вп (вперед) и жди показывают, что черепашка должна проходить 5 шагов, а потом останавливаться на 1 мгновение. Фактически число, стоящее в команде ВП, определяет скорость движения черепашки во время анимации.
Используя эту процедуру, можно оживить несколько черепашек с разными картинками.
1. Если для движения требуется одна картинка (машина, самолет, автобус и т.п.):
а) нажать на картинку в клипарте одиночных форм и щелкнуть по черепашке.
б) Открыть рюкзак и указать на закладке Правило: Движение и Много раз.
в) Щелкнув по черепашке левой кнопкой мыши, получим анимацию.
2. Если для движения требуется несколько форм, то необходимо выделить с помощью нажатой кнопки Shift все картинки, участвующие в движении, и щелкнуть мышкой по черепашке, после чего выполнить п. б.
Все черепашки будут двигаться с одинаковой скоростью.
Чтобы можно было устраивать «гонки» черепашек, можно ввести бегунки, которые помогают  регулировать скорость их движения.

2. Процедуры с параметрами

Параметры в процедуре нужны, чтобы можно было изменять значения, которые в ней использованы.
Например, чтобы процедуру Движение можно было использовать для черепашек, которые могут двигаться с разной скоростью, надо вместо значения скорость записать ее буквенное обозначение (как в алгебре или физике). Можно использовать буквы как русского, так и английского алфавита. Обозначим скорость буквой V.
Процедура движение изменится следующим образом:
Это движение V
Нк 90
Вп :V жди 1
Конец
Вы видите, что рядом с именем процедуры появилось обозначение скорости, а вместо значения скорости в команде ВП 10 также использовано обозначение, но ему предшествует двоеточие. Обратите внимание, что после ВП ставится пробел, а между двоеточием и буквой V пробела нет. Это обязательное правило нарушать нельзя, иначе черепашка не сможет нас понять и не будет выполнять нужные действия.
Из описания процедуры неясно, с какой скоростью должны двигаться черепашка. Для того, чтобы задать конкретную скорость, в рюкзаке черепашки рядом с именем процедуры следует указать значение скорости, т.е. в окошке с именем процедуры мы запишем Движение 10  илиДвижение 15. Соответственно разные черепашки будут двигаться с разной скоростью.

3. Использование бегунков для регулирования скорости.




Выберите инструмент создания бегунка и щелкните в любом месте листа.
Откроется диалоговое окно:
Датчик - имя бегунка - сообщает его текущее значение. Например, если вы создадите бегунок с указанными выше параметрами, то вы сможете использовать следующую инструкцию.
покажи бегунок1
50
вперед бегунок1
В качестве входного параметра в команде впередпередано значение бегунка.
Имя бегунка и значения можно отредактировать.
Например, можно назвать бегунок Скоростьи указать значения: минимум – 0, максимум – 30, а исходную скорость можно сделать 2.
В рюкзаке черепашки-машинки запишем:Движение скорость. Таким образом мы указали, что машинка будет выполнять процедуру Движение, а скорость можно регулировать с помощью бегунка скорость.
Параметры бегунка можно редактировать, если по нему щелкнуть мышкой и выбрать «Редактировать».
Для модели «Гонки» можно выбрать несколько черепашек и для каждой создать свой бегунок. Имена бегунков должны быть разные, они вписываются в рюкзаки соответствующих черепашек.
Теперь в модели остается одно неудобство: по каждой черепашке надо щелкать, чтобы ее запустить. Чтобы они начали двигаться одновременно, надо создать кнопку «Пуск».

4. Создание кнопок




Выберите инструмент для создания кнопок и щелкните в любом месте листа.

Откроется диалоговое окно. Дайте кнопке имя (это имя будет отображаться на кнопке на листе).
Инструкция каждая  показывает, что она относится ко всем черепашкам, находящимся на листе. Вкл означает запуск анимации.
Остановить все процессы, можно с помощью инструмента остановки. Можно создать кнопку Стоп, на которой указать Каждая [выкл].
Вообще говоря, кнопке можно приписать сложные действия, которые следует оформить в виде процедуры, а  на кнопке указать имя этой процедуры.

5. Датчики

До сих пор мы пользовались только командами (инструкциями). Мы давали команды, а черепашка их выполняла.
Но некоторые параметры черепашка «знает» и может сообщить их нам. Например, координаты  точки поля, в которой она находится, или цвет поля, на котором она стоит.ъ
Возьмите одну черепашку и поставьте ее в любое место. Напишите в поле команд (слева внизу) команды:
Покажи х_коор
Покажи у_коор
На каждую инструкцию Покажи черепашка ответит числом, которое соответствует нужной координате: Х или У.
Теперь включите панель графического редактора ЛогоМиров:
Нарисуйте несколько закрашенных кругов разного цвета. Обратите внимание, что когда вы выбираете цвет закрашивания, он отображается внизу в квадрате, а под ним указывается номер этого цвета, принятый в ЛогоМирах.
Теперь поставьте черепашку по очереди на каждый закрашенный круг и напишите в поле команд:
Покажи ЦП
Черепашка  ответит числом, соответствующим цвету поля.
Имена х_коор, у_коор и ЦП являются датчиками координат и цвета поля. Их можно использовать в командах, которые проверяют выполнение условия и выполняют разные действия в зависимости от результатов проверки.

6. Команда Если. Проект «Остановка на финише».

Вернемся к модели гонок. В рассмотренной задаче машинки двигались с разной скоростью, но останавливались только при нажатии кнопки Стоп.
Нарисуем фон для модели Гонки таким образом, чтобы справа у нас получилась финишная линия. Поставим на нее черепашку и определим с помощью команды Покажи х_кооркоординату Х, на которой должны остановиться машинки (например, 300).
В процедуре Движение черепашка проходит 10 шагов и повторяет процедуру заново, т.к. в рюкзаке указано, что процедура выполняется много раз. Но когда машинка достигает координаты 300, она больше двигаться не должна.
Запишем процедуру следующим образом:
Это движение
Нк 90
Если х_коор  <  300 [вп 10 жди 1]
Конец
Что будет происходить в этом случае? Черепашка, прежде чем сделать очередные 10 шагов, проверяет, выполняется ли условие х_коор  <  300, т.е. она берет значение датчика х_коор  и сравнивает его с числом 300. Если оно оказывается меньше, она делает 10 шагов и возвращается к проверке. Как только значение х_коор оказывается больше или равно 300, команды, записанные в скобках, не выполняются. Так работает команда Если.
Проект Остановка на финише будет выглядеть примерно так:


Обратите внимание на следующее:
1. Слева и справа от знака < пробелы обязательны.
2. В этом примере процедура называется Машина. Имя процедуры само по себе не имеет значения. Важно, чтобы это имя совпадало с именем, указанным в рюкзаке каждой черепашки.

7. Команда Если_иначе. Проект «Кораблик».

В рассмотренном случае в зависимости от истинности условия команды, заключенные в скобки либо выполнялись, либо никаких действий не производилось.
В некоторых проектах возможен случай, когда в зависимости от выполнения условия должны производиться разные действия.
Рассмотрим проект-шутку «Кораблик». На фоне из клипарта нарисуем «озеро» цветом 105.
Зададим движение таким образом, чтобы по траве черепашка двигалась в виде машинки, а по озеру – в виде кораблика, т.е. задача сводится к смене форм, надеваемых на черепашку.
В рюкзаке черепашки откроем закладку Формы и занесем туда две картинки: машинку и кораблик. Соответственно эти формы будут иметь номера 1 и 2. Для смены формы используется команда НФ (новая форма). Поскольку картинки имеют разный размер, воспользуемся командойнов_размер с указанием разных размеров для разных форм. Сигналом для смены формы является значение датчика ЦП, равное 105. Команда Если_иначе позволяет задать два варианта смены форм:
   Если_иначе цп = 105 [нф 2 нов_размер 50] [нф 1 нов_размер 30]
При истинности условия цп = 105 выполняются команды, указанные в первых скобках, в противном случае – команды из вторых скобок.
Поскольку в проекте участвует только одна черепашка, запишем процедуру в рюкзаке.
Обратите внимание: команда записана в одну строку, несмотря на то, что при наборе часть ее может перенестись на следующую строку.

8. Генератор случайных чисел. Проект «Сад».

В любой компьютерной игре используется программа – генератор случайных чисел.
Такой датчик-генератор существует и в среде ЛогоМиры.
Наберите в поле команд:
Покажи сл 10
Если выполнять эту команду несколько раз подряд, мы увидим, что черепашка отвечает нам различными числами в пределах 10. Если изменить число, т.е. поменять параметр датчика сл, то и пределы изменения чисел изменятся. Этот численный параметр показывает, что случайное число будет появляться в пределах от 0 до заданного числа.
Воспользуемся датчиком случайных чисел для составления процедуры сад.
Будем считать, что координата Х изменяется от -350 до +350, а У – от -200 до +200.
Если задать координаты с помощью команд
нов_х  сл 350
нов_у сл 200,
то черепашка будет попадать только в правую верхнюю четверть поля, т.к. мы не сможем получить отрицательные координаты. Поэтому будем задавать пределы, вдвое превышающие максимальную координату, а потом отнимать максимальную координату:
нов_х (сл 700) - 350
нов_у (сл 400) - 200
Вспомним, что команда штамп оставляет на поле отпечаток формы черепашки.
Получим следующую процедуру:
Это сад
нов_х (сл 700) - 350
нов_у (сл 400) - 200
штамп
конец
Если задать в рюкзаке параметр много раз, то картинки быстро закроют все поле. Поэтому ограничим количество «растений в саду» и запишем в рюкзаке: повтори 100 [сад].


Обратите внимание: чтобы запустить проект заново, наберите в поле команд СГ, чтобы стереть предыдущий результат.
Можно разделить сад на клумбы: слева «посадить» одни цветочки, справа – другие.
Воспользуемся тем же приемом, что и в проекте «Кораблик». Занесем в рюкзак черепашки две формы цветов. А проверять в команде Если_иначе будем не цвет поля, а координату Х.
Кроме того, внесем еще одно усовершенствование: нарисуем до середины поля зеленую травку, а выше – голубое небо и будем «сажать» цветочки только на траву. Для этого придется проверять еще и значение координаты У и штамповать картинки только когда координата У будет отрицательной. Можно воспользоваться клипартом фонов.
Получим следующий проект:

























0 коммент.:

Отправить комментарий