
Решение:
это Задача4
пусть "оп1 1-оп
пусть "оп2 2-оп
пусть "оп3 3-оп
пусть "рез1 :оп1 * :оп2
пусть "рез2 :оп3 + :рез1
если :рез2 = 2 [пусть "рез2 1]
пусть "рез :рез1 + :рез2
если_иначе :рез = 1 [пусть "рез 0] [пусть "рез 1]
результат, ст вставь :рез
конец
Многократное выполнение набора (команды Лого перебор, скажи, много_раз)
Задача1: Поезд едет
Создайте четыре черепашки (ч1, ч2, ч3, ч4): паровоз и три вагона. Напишите процедуру, чтобы поезд поехал.
Решение:
это поезд
повтори 5[
перебор [м [ч1 ч2 ч3 ч4]]
[для :м нк 270 вп 10]]
конец
Задача2: Вывод в текстовое окно чисел от 1 до 9
Напишите процедуру, которая выводит в текстовое окно числа от 0 до 9.
Решение:
это цифры
много_раз [м 10] [ вставь :м]
конец
Задача3: Вывод в текстовое окно четных чисел от 1 до 22
Напишите процедуру, которая выводит в текстовое окно четные числа от 0 до 22.
Решение:
это чётные
много_раз [о 23 [ вставь :о = / 2 остаток = 0]]
конец
Задача4: Танцующие черепашки.
Создать три черепашки с именами чер1, чер2, чер3. Черпашки должны менять цвет случайныим образом и повернуться на месте вокруг своей оси 5 раз. Должны получиться „танцующие” черепашки. Используй команды: скажи, нц сл 200.
Решение:
это танец
повтори 190 [скажи [чер1 чер2 чер3] [нц сл 200 пр 10]]
конец
Задача5: Мигающие окна
Создать три текстовые окна с именами тек1, тек2, тек3. В каждом окне напишите по большой букве. Текстовые окна должны по очереди то появляться то исчезать. Должны получиться „мигающие” окна. Используй команды: перебор, спрячь_текст, покажи_текст
Решение:
это задача2
повтори 10 [
перебор [Т [тек1 тек2 тек3]]
[для :Т спрячь_текст покажи_текст]
]
конец
Циклический алгоритм
Циклический алгоритм №1
Задача1-1: Поросенок вырос
Поросенок кушает и растет до тех пор, пока размер его формы не изменится с 10 до 80-ти. (Используй команду Лого нрз Х)
Решение:
это поросенок
пусть "к 10
ч1, нрз :к
цикл [
пусть "к :к + 10
нрз :к нф 13 жди 5 нф 10
если :к > 80 [стоп]
]
конец
Задача1-2. Кошка в лужу попала
Киска идет пока не попадет в лужу (используй команду Лого цп - цвет поля).
Решение:
это киска
ч4, нм [-60 -25]
цикл [
ч4, нк 90 нф 25 вп 5 нф 28 вп 5
если цп = 105 [стоп]
]
конец
Задача1-3. Заяц делает зарядку
Заяц делает зарядку пока не пройдет 100 единиц времени. (Используй команды Лого нов_счет, счетчик.)
Решение:
это зарядка
нов_счет
цикл [
з, нф 14 жди 5 нф 15 жди 5
если счетчик > 100 [стоп]
]
конец
Циклический алгоритм №2
Задача2-1 Проверка на делимость на 2, 3, 5, 7.
Проанализировать все числа от 1 до 25 на делимость на 2, 3, 5, 7. В текстовые окна вывести соответствующие числа.
это задача1
пусть "х 1
скажи [на_2 на_3 на_5 на_7] [ст]
цикл [
если (остаток :х 2) = 0 [на_2, пиши :х]
если (остаток :х 3) = 0 [на_3, пиши :х]
если (остаток :х 5) = 0 [на_5, пиши :х]
если (остаток :х 7) = 0 [на_7, пиши :х]
пусть "х :х + 1
если :х = 26 [стоп]
]
конец
Задача2-2 Проверка на делимость на 2, 3.
Проанализировать числа от 1 до 40 и найти те, которые делятся и на 2 и на 3.
это задача2
пусть "х 1
на_2_и_3, ст
цикл [
если и (остаток :х 2) = 0 (остаток :х 3) = 0 [на_2_и_3, пиши :х]
пусть "х :х + 1
если :х = 40 [стоп]
]
конец
Циклический алгоритм №3
Задача3-1.Квадрат чисел от 1 до 10
В текстовом окне число! выведите числа от 0 до 10.
В текстовом окне квадрат_числа выведите же числа, помноженные на себя.
Решение:
это задача1
пусть "х 0
число!, ст
квадрат_числа, ст
цикл [
число!, пиши :х
квадрат_числа, пиши :х * :х
пусть "х :х + 1
если :х > 10 [стоп]
]
конец
Задача3-2. Код буквы
Написать процедуру, которая в текстовом окне буква пишет букву, в текстовом окне код_буквы пишет код этой буквы. Буквы вводится с клавиатуры. Количество букв 10.
Используй команды Лого: жди_символ, код.
Решение:
это задача2
пусть "х 0
буква, ст
код_буквы, ст
цикл [
пусть "с жди_символ
буква, пиши :с
код_буквы, пиши код :с
пусть "х :х + 1
если :х > 10 [стоп]
]
конец
Программирование игр.
Игра1 «Лабиринт»
Суть игры – по листу проекта перемещается черепашка и преодолевает различные препятствия. Управление движением черепашки осуществляется с клавиатуры.
1) На листе процедур наберите следующую программу.
это стрелки
цикл [
пусть "х жди_символ
если :х = 4 [нк 270]
если :х = 8 [нк 0]
если :х = 6 [нк 90]
если :х = 2 [нк 180]
если :х = 5 [отмени [вп скорость]]
если :х = 0 [всегда [вп скорость]]
]
конец
2) Создайте кнопку с именем стрелки.
3) Создайте бегунок (нижняя, правая пиктограмма в инструментальном меню) с именем скорость и значением от 0 до 50.
4) Нажми на кнопку стрелки и проверь как твоя черепашка реагирует на нажатие кнопок на цифровой клавиатуре.
5) Нарисуй лабиринт и запрограммируй цвета так, чтобы черепашка попадала в трудные ситуации и начинала свое путешествие сначала.
Игра№2 "Мишень"
Суть игры -
1 Создайте два бегунка - угол с диапазоном от -90 до 90,
и дистанция с диапазоном от 0 до 500
2 Создайте две кнопки Старт и Огонь.
3 Создайте два текстовых окна с именами ваши_очки и №попытки.
4 На листе нарисуйте мишень - 4 разноцветных вложенных друг в друга круга.
5 Черепашке присвойте имя пуля.
6 В поле форм нариуйте новую форму для пули.
7 На листе процедур напишите процедру старт, которая будет -
- очищать текстовое окно,
- определять 2 переменные - попытки и очки ( начальное значение 0)
- черепашку пуля будет ставить на место и задавать ей форму пули.
8 На листе процедур напишите процедру огонь, которая будет -
- к переменной попытки прибавлять 1,
- черепашка пуля будет вставать на начальное место, принимать форму пули, устанавливать курс угол (значение бегунка), перемещаться на расстояние дистанция (значение бегунка),
- анализировать значение переменной попытки и в случае, если значение переменной больше 5, сообщать "Вы исчерпали все попытки!", и останавливать выполнение процедуры огонь,
- анализировать цвет поля под черепашкой. В зависимости от цвета поля к переменной очки прибавлять разные числа. В случае непопадания в мишень, сообщать "Вы - мазила",
- в текстовое окно ваши_очки выводить значение переменной очки, в текстовое окно №попытки выводить значение переменной попытки
- черепашка пуля менять форму на флаг1. После небольшой задержки возвращаться на начальное место и принимать форму пули.
Решение:
; процедура делает начальные установки
это старт
очки, ст
пуля, нф 23 нрз 10 нм [-200 -80]
пусть "попытки 0
пусть "оч 0
конец
; процедура - пуля вылетает по курсу "угол на расстояние "дистанция
В случае попадания в мишень, прибавляются очки, пуля превращается в флажок затем возвращается на место. В текстовое окно "очки выводится количество очков
это огонь
пусть "попытки :попытки + 1
пуля, нф 23 нм [-200 -80]
нк угол
плавно дистанция 15
если :попытки > 5 [сообщи [ты исчерпал свои попытки!] стоп]
если цп = 85 [пусть "оч :оч + 30 ]
если цп = 45 [пусть "оч :оч + 50 ]
если цп = 15 [пусть "оч :оч + 10 ]
если цп = 65 [пусть "оч :оч + 20 ]
если цп = 0 [сообщи [мазила]]
очки, ст вставь :оч пуля, нф 35 жди 10 нм [-200 -80] нф 23
конец
Игра№3 "Минное поле"
Суть игры - задача игрока - пересечь минное поле, не задев мин.
Для этого -
1 На листе проекта создайте черепашку с именем Сапер в форме человека, 5 черепашек (мина1, мина2, мина3, мина4, мина5) в форме мин,
2 Создайте кнопку Пошли,
3 Нарисуйте левую и правую границу минного поля.
4 На листе процедур напишите процедуру Пошли, в которой выполняется следующее -
a) Мины прячутся и размещаются случайным образом на листе проекта
Используйте команды Лого - скажи [ ] [ ] , нов_х Х, нов_у У, сл Х.
b) В цикле -
- черепашка сапер перемещается вслед за указателем мышки.
- анализируется номер цвета поля под черепашкой сапер, в случае если он равен номеру цвета правой границы минного поля, то выдается сообщение "Молодец" и останавливается выполнение процедуры.
- анализируется расстояние от черепашки сапер до черепашек, изображающих мины. Если расстояние меньше 20 единиц, то мины взрываюся (меняют форму) и выполнение процедуры прекращается.
Используйте команды Лого - путь "имяЧ, место_мышки.
Решение:
это пошли
скажи [мина1 мина2 мина3 мина4 мина5]
[пч нф 28 пч нов_х -200 + сл 400 нов_у -120 + сл 240]
цикл [
сапер, нм место_мышки
если (путь "мина1) < 20 [мина1, нф 16 стоп]
если (путь "мина2) < 20 [мина2, нф 16 стоп]
если (путь "мина3) < 20 [мина3, нф 16 стоп]
если (путь "мина4) < 20 [мина4, нф 16 стоп]
если (путь "мина5) < 20 [мина5, нф 16 стоп]
если цп = 15 [сообщи [Молодец!] стоп]
]
конец
Если использовать команду Лого перебор, процедура будет короче, но запутанней.
это пошли
скажи [мина1 мина2 мина3 мина4 мина5]
[пч нф 28 пч нов_х -200 + сл 400 нов_у -120 + сл 240]
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |


