ГЛАВА 3. ЦИКЛИЧЕСКОЕ ВЫПОЛНЕНИЕ ПРОГРАММЫ.

Циклическое — повторяющееся по кругу, когда одно и то же действие выполняется снова и снова. Создайте новый проект. Нажмите «Файл», потом «Новый».

Сложите новую программу для Кота.

Нажимайте на пробел, Котик будет поворачиваться на месте.

Совет. Для того, чтобы развернуть Кота вправо дважды кликните блок «повернуть в направлении 90».

Давайте сделаем так, чтобы при нажатии на пробел Кот совершал полный оборот. Сначала посчитайте сколько раз надо нажать на пробел, чтобы он снова встал вертикально. Получается двадцать четыре раза. Правильно, всего в круге 360 градусов. Если 360 разделить на 15, то получится 24 раза. Для того, чтобы Котик при нажатии пробеле совершил один оборот, надо добавить в скрипт блок «повторить». Выберите блок «повторить» и тащите его на существующий скрипт. Когда блок «повторить» обнимет блок поворота, то отпустите его.

Получится вот такой скрипт.

Нажмите пробел. Котик сделает один оборот вокруг своей оси. Несколько раз переверните Котика и запомните, с какой скоростью он вращается. Теперь немного измените скрипт. Сделайте так, чтобы он повернулся 36 раз по 10 градусов.

Нажмите на пробел — Котик крутится медленнее! Ещё немного измените скрипт.

Кот крутится совсем медленно. Думаю, вы теперь сами догадаетесь, как ускорить вращение Кота. Надо увеличить количество градусов, и уменьшить число повторов так, чтобы произведение осталось 360. Например, так.

Протестируйте скрипт, нажав на пробел. Вот это скорость! Давайте ещё ускорим.

А теперь давайте сделаем максимальное ускорение! Один оборот сразу на 360 градусов!

Нажмите на пробел. Не работает? Ещё как работает! Только переворот настолько быстрый, что вы его не замечаете! Шутка! На самом деле блок «повторить 1 раз» не имеет смысла, ведь и без этого каждый блок Scratch выполняется по одному разу. Также, как и поворот на 360 градусов не имеет смысла, ведь положение спрайта никак не измениться.

Запомните, и никогда не делайте таких глупых скриптов!

Давайте теперь сделаем минимультик про Кота и Собаку с использованием новых блоков. Создайте новый проект.

Сделайте такую программу для Кота.

Синие блоки Вам уже знакомы. Появились два новых жёлтых блока. При выполнении блока «ждать 1 секунду» выполнение программы останавливается на одну секунду, и ничего не происходит. Блок «повторить 10» обнимает два синих блока и один жёлтый. Блоки оказываются вложенными в жёлтый блок повтора, они будут выполняться поочерёдно десять раз подряд. Нажмите пробел, Кот делает 10 раз по 10 шагов и останавливается. Сколько всего шагов проходит Кот? 10 * 10 = 100 шагов. Звёздочка * это знак умножения. Нажмите на пробел и подождите десять секунд пока Кот не нагуляется. Немного измените программу. Напишите в блоке «повторить» число двадцать. Теперь Кот гуляет двадцать секунд. Напишите там шестьдесят. Теперь Кот гуляет целую минуту.

Если же в блоке «повторить» написать цифру 1000 (тысяча) или 1000000 (миллион), то программа будет повторяться очень долго.

Кот будет бегать без остановки миллион секунд!

Это примерно 11 лет. Те, кто не хочет ждать, могут остановить бег кота красной кнопкой.

Очень большие числа в блок повторения лучше не писать, это не правильно. Правильно — использовать блок «всегда». Давайте посмотрим, как он работает. Заменим блок «повторить 1000000» на блок «всегда». Для этого сначала вынем из блока «повторить 1000000» три вложенных блока. Возьмите мышкой за верхний вложенный блок «идти 10 шагов», и вытащите три блока на любое пустое место.

Затем отцепите блок «повторить 1000000» и перетащите его ко всем блокам в центр экрана. Он исчезнет.

Вместо исчезнувшего блока «повторить 1000000» возьмите блок «всегда» и прицепите к блоку «стиль вращения влево-вправо».

Затем затащите в него три блока.

Теперь один раз нажмите Пробел. Кот шагает без остановки. Так как мы использовали блок «всегда», Кот будет гулять, пока мы его не остановим красной кнопкой.

Блок «всегда» мы будем очень часто использовать в наших проектах.

С помощью блока «всегда» можно сделать наш первый интерактивный проект. Интерактивный, это такой, в котором можно управлять движением персонажей. Создайте новый проект, так же, как мы делали в начале главы.

Старый проект можно не сохранять.

Появился новый проект, в котором есть только один спрайт — Кот. Добавьте еще один спрайт, нажав на кнопку «Выбрать спрайт из библиотеки».

Добавьте кого-нибудь из животных, например, Собаку.

Видите, Собака появилась прямо над Котом.

Растащите их. Кот — влево, Собака — вправо.

Получилось неплохо, но, обычно Собака бежит не от Кота, а к нему! Собаку надо развернуть мордочкой к Коту. Повернуть Собаку можно в свойствах спрайта. Нажмите на синий кружочек с буквой «i» у спрайта Собаки.

Откроется окно свойств спрайта.

Нажмите мышкой на синюю палочку, которая показывает направление Собаки, и переверните её влево.

Собака перевернулась вверх ногами!

Да уж, лёжа на спине она Кота не догонит. Для того чтобы собака не переворачивалась на спину, надо нажать маленькую кнопку с двумя стрелочками.

Совсем другое дело!

«Привет, Котяра!»

«Привет, привет. Кто краску синюю на тебя пролил?»

Закройте окно свойств спрайта нажав на синий кружочек с треугольником.

Кот в нашем проекте будет мяукать, а Собака будет лаять. У Кота звук «мяу» добавлен всегда, а у собаки пока ещё нет никаких звуков. Надо добавить ей звук «dog1». Убедитесь, что выбран спрайт Собаки.

Как добавлять звуки, Вы уже знаете, для этого надо сначала нажать на закладку «звуки».

А потом на кнопку «Выбрать звук из библиотеки».

Откроется Библиотека звуков. Выберите вид звуков «Животное».

Все лишние звуки исчезнут, останутся только звуки животных. Выберите звук «dog1» и нажмите «ОК».

Теперь у нас есть два спрайта со звуками. Можно начинать программировать! Перейдите на вкладку «Скрипты».

Убедитесь, что выбран спрайт Собаки.

Сделайте ей такую программу из двух скриптов. В этих скриптах использованы новые блоки. Синий блок «повернуться к Sprite1», голубой блок «касается Sprite1» и жёлтый блок «если».

Программа состоит из двух скриптов, которые будут работать одновременно. При нажатии на зелёный флажок Собака всегда будет повёрнута в сторону Кота, за это отвечает верхний скрипт. При касании Кота собака будет лаять, за это отвечает второй скрипт.

Теперь запрограммируем Кота, выберите его в области спрайтов.

Для Кота сделайте такую программу. В ней тоже два скрипта.

Запустите программу, нажав на зелёный флажок.

Кот прыгнет к курсору мышки и приклеится к нему. Это происходит из-за блока «всегда перейти в указатель мышки». Кот будет следовать за мышкой до тех пор, пока Вы не остановите программу красным кружком. Попробуйте аккуратно приблизиться Котом к Собаке. Как только они соприкоснуться, раздастся лай и мяуканье, точно, как в жизни, когда Вы бросаете кота на соседскую собаку.

Если Собаки не касаться, а просто прогуливаться котом где-нибудь вверху экрана, то собака будет поворачиваться к Коту, не спуская с него глаз. Как Вы можете заметить, Собака поворачивается только влево или вправо. Это происходит из-за того, что в свойствах спрайта «Dog1» включён стиль вращения «влево-вправо». Давайте изменим режим поворота, чтобы Собака всегда смотрела прямо на Кота. Остановите работу программы красным кругом. Откройте свойства спрайта «Dog1».

Откроется окно свойств спрайта.

Включите стиль вращения «кругом».

Запустите программу зелёным флажком. Подвигайте Кота — теперь Собака всегда смотрит прямо на него. Чтобы стало интереснее, можно добавить персонажам слова. Какую фразу кому — догадайтесь сами.

В этом проекте Собака так и не догнала Кота. Когда Вы научитесь программировать лучше, сможете это исправить.

Программа получилась интересная. Давайте сохраним её на память. Потом сможем показать друзьям и родителям. Нажмите «Файл», потом «Сохранить».

Откроется окно сохранения. Выберите папку, в которую будете сохранять проекты, и напишите имя проекта, например, «Кот и собака» и нажмите Enter.

Теперь программа никуда не пропадет.

Для того чтобы показать программу друзьям, после включения Scratch надо нажать «Файл», а потом «Open».

Выбрать нужную программу и нажать «Открыть».

Кнопка «Открыть» обычно расположена справа внизу окна.

Загрузка...