Задача 1. У исполнителя Калькулятор две команды, которым присвоены номера:
1. вычти 3
2. умножь на 4
Например, программа 21211 – это программа, содержащая команды:
Умножь на 4
Вычти 3
Умножь на 4
Вычти 3
Вычти 3
Преобразует число 5 в число 62
Запишите порядок команд в программе получения из числа 2 числа 500, содержащей не более 5 команд, указывая лишь номера команд.
Решение:
2 * 4 = 8
8 * 4 = 32
32 * 4 = 128
128 - 3 = 125
125 * 4 = 500
Ответ: 22212
Задача 2. Исполнитель Черепашка, перемещаясь на экране компьютера, оставляет след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует две команды:
ВПЕРЕД n (где n – целое число), вызывающая передвижение Черепашки на n шагов в направлении движения.
НАПРАВО m (где m – целое число), вызывающая изменение движения на m градусов по часовой стрелке.
Запись ПОВТОРИ k [Команда 1 Команда 2 Команда 3] означает, что последовательность команд в скобках повторится k раз
Черепашке был задан для исполнения следующий алгоритм:
ПОВТОРИ 6 [НАПРАВО 60 ВПЕРЕД 15]
Какая фигура появится на экране?
1) правильный пятиугольник
2) правильный треугольник
3) правильный шестиугольник
4) правильный двенадцатиугольник
Решение: Вспомним, что выпуклый многоугольник называется правильным, если у него все стороны равны и все углы равны.
Рассмотрим группу команд в скобках: [НАПРАВО 60 ВПЕРЕД 15]
Черепашка должна поворачиваться в одном направлении – НАПРВО, на один и тот же угол и прочерчивает отрезки одинаковой длины.
Эти действия Черепашка совершит 6 раз.
Ответ: 3
Задача 3. Исполнитель Чертёжник перемещается на координатной плоскости, оставляя за собой след в виде линии. Чертёжник может выполнять команду Сместиться на (a, b) , где (a, b – целые числа), перемещающую Чертёжника из точки с координатами (х, у) в точку (х + a, у + b). Если числа a, b положительные, значение соответствующей координаты увеличивается, если отрицательные – уменьшается.
Например, Чертёжник находится в точке с координатами (3,1), то команда Сместиться на (1,-2) переместит Чертёжника в точку (4,-1).
Запись
Повтори k раз
Конец
Означает, что последовательность команд Команда 1 Команда 2 Команда 3 повторится k раз.
Чертёжнику был дан для исполнения следующий алгоритм
Повтори 3 раза
Конец
Какую команду надо выполнить Чертежнику, чтобы вернуться в исходную точку, из которой он начал движение?
1) Сместиться на (12, 0)
2) Сместиться на (0, 12)
3) Сместиться на (0, -12)
4) Сместиться на (-12, 0 )
Решение: После первого прохода
Сместиться на (1, 1) Сместиться на (2, 2) Сместиться на (1, -3)
Чертежник окажется в точке (4;0).
Следовательно, повторив движения 3 раза он окажется в точке (12; 0). Чтобы вернуться в исходную точку, ему нужно выполнить команду 4.
Изучаемые вопросы. Знакомство со средой КуМир. Система команд исполнителя Черепаха. Работа с пультом управления. Редактирование и оптимизация программ.
Исполнитель: Черепаха
Среда исполнителя. Черепаха живёт на квадратном поле со стороной 500 пикселей. Поле ограничено рвом с водой. Черепаха может перемещаться по полю, но не может его покинуть. Черепаха рисует кончиком хвоста, перемещаясь вперёд или назад на указанное количество пикселей. Поворот Черепахи происходит относительно кончика хвоста либо по часовой стрелке (команда вправо ), либо против часовой стрелки (команда влево ) на указанное количество градусов. При запуске исполнителя (команда верхнего меню Миры → Черепаха ) Черепаха находится в центре поля, хвост опущен, смотрит вниз.Система команд исполнителя
Команда |
Комментарии |
поднять хвост |
Используется для бесследного перемещения. |
опустить хвост |
Используется для рисования. |
вперед (Х) |
Черепаха перемещается вперёд на Х пикселей |
назад (Х) |
Черепаха перемещается назад на Х пикселей |
вправо (Х) |
Черепаха поворачивается направо (по часовой стрелке) на Х градусов |
влево (Х) |
Черепаха поворачивается налево (против часовой стрелки) на Х градусов |
Для непосредственного управления Черепахой используют пульт
управленияЧтобы скрыть изображение Черепахи, надо щёлкнуть по ней мышью. Второй щелчок возвращает Черепаху на поле.
Более подробное описание Черепахи вызовите командой верхнего меню,
Задание 1. Используя пульт управления, выполните программу:
опустить хвост
вперед (100)
вправо (90)
вперед (100)
вправо (90)
вперед (100)
вправо (90)
вперед (100)
Какую фигуру нарисовала Черепаха?
Как надо изменить программу, чтобы Черепаха нарисовала ту же самую фигуру, но в два раза больше?
Как изменится картинка, если все команды «вперед» заменить на команды «назад»?
Как изменится картинка, если все команды «вправо» заменить на команды «влево»?
Задание 2. Какой длины отрезок нарисует Черепаха при выполнении фрагмента программы:
опустить хвост
назад (4)
вперед (5)
назад (1)
вперед (5)
назад (1)
Задание 3. На сколько пикселей относительно исходного положения сдвинется Черепаха после выполнения программы:
поднять хвост
вперед (5)
назад (3)
вперед (5)
назад (4)
назад (3)
Упростите программу, записав её минимальным количеством команд.
Задание 4. На какой угол вправо повернётся Черепаха после выполнения фрагмента программы:
вправо (90)
влево (30)
вправо (10)
влево (20)
влево (50)
вправо (90)
Упростите эту программу.
Задание 5 . Упростите программу, записав её минимальным количеством команд.
опустить хвост
вперед (5)
вперед (5)
влево (45)
влево (45)
назад (5)
вперед (10)
Задание 6. Считая, что сторона одной клетки равна 20 пикселям, с помощью пульта управления нарисуйте ёлку.
Задание 7. С помощью пульта управления нарисуйте произвольный рисунок. Упростите программу.
Вначале программист дает черепашке простые приказы, например ВПЕРЕД 100 , что означает "передвинуться вперед на 100 шагов", или НАЛЕВО 60 , т. е. "сделать поворот влево на 60 градусов". Эти команды можно использовать для создания программ, рисующих геометрические фигуры, необходимо только запомнить, что каждая команда пишется на отдельной строке. Передвигаясь по экрану, черепашка оставляет за собой след (по умолчанию цвет пера черепахи - синий).
Вставлять в программу команды удобно, используя кнопки в левой части экрана.
Шаги черепашки очень маленькие - равны расстоянию между двумя соседними точками на экране, поэтому действие команды "ВПЕРЕД 1" можно и не заметить.
Выполняя команды НАЛЕВО или НАПРАВО, черепашка поворачивается на заданный угол (при этом она считает, что угол задан в градусах). При повороте черепашка остается на месте, не смещаясь ни в какую сторону, меняется только ее направление. Не забывайте, что направление поворота (налево или направо) определяется "с точки зрения" черепашки.
Запускают программу на выполнение с помощью большой красной кнопки с надписью Выполнить .
Попробуем вместе начертить квадрат. Чтобы заставить черепашку двигаться по квадрату, мысленно проделайте за нее весь путь и опишите получившееся.
Если сторона квадрата будет длиной в 100 черепашьих шагов, можно составить такую последовательность команд:
вперед 100
налево 90
вперед 100
налево 90
вперед 100
налево 90
вперед 100
налево 90
В этой последовательности 4 раза повторяется группа команд ВПЕРЕД 100 НАЛЕВО 90. Чтобы не писать одни и те же команды четыре раза подряд, познакомимся с еще одной командой, которую знает черепашка, - командой ПОВТОРИТЬ
. Наша программа, рисующая квадрат, будет выглядеть так:
повторить 4 {
вперед 100
налево 90
}
В фигурных скобках в нужной последовательности записываются те команды, которые необходимо сделать черепашке несколько раз.
Фигурные скобки можно ставить и так:
повторить 4{
вперед 100
налево 90}
Для того чтобы увидеть выполнение команд в более медленном режиме, можно воспользоваться командой ПАУЗА , после которой необходимо указать время в миллисекундах. В одной секунде - 1000 миллисекунд. То есть, если мы хотим сделать задержку в полсекунды, следует дать команду пауза 500 .
Теперь подумаем, как нарисовать равносторонний треугольник?
При рисовании равностороннего треугольника черепашка должна нарисовать три одинаковых линии и сделать три одинаковых поворота. При создании программы нам поможет одно простое правило, которое называется "Правило 360 градусов".
Правило 360 градусов
Обратите внимание, что при рисовании квадрата черепашка начинает и заканчивает свой путь в одной и той же точке и смотрит в одну и ту же сторону, т.е. ее начальное и конечное положения совпадают. Рисуя квадрат, она совершает полный оборот, т.е. поворачивается на 360 градусов. Разделив 360 на 4 (равных поворота), мы получим 90 - размер угла поворота. При рисовании треугольника черепашка должна сделать три одинаковых поворота и вернуться в начальное положение. Следовательно, каждый из углов поворота равен 360: 3 = 120.
Напишем программу:
повторить 3 {
вперед 100
налево 120
}
Можно легко научить черепашку рисовать правильный пятиугольник. Каждый раз черепашка поворачивается на угол, равный 72 градусам (360:5=72). Шестиугольник (360:6=60)
Итак, теперь черепашка умеет рисовать правильные многоугольники.
Попробуем еще что-нибудь нарисовать.
Задачи на умение исполнить алгоритм для конкретного исполнителя
Задача 1. Исполнитель Чертежник
В задаче необходимо определить, какой одной командой можно заменить заданный алгоритм, чтобы Чертежник оказался в той же точке, что и после выполнения алгоритма.
Найдем смещения Чертежника по осям x и y . Команда Повтори 3 раз означает, что команды Сместиться на (-2, -3), Сместиться на (3, 2) и Сместиться на (-4, 0) выполнятся три раза. Получаем смещения для x и y:
x = 3*(–2 + 3 – 4) = –9
y = 3*(–3 + 2 + 0) = –3
алгоритм можно заменить командой Сместиться на (–9, –3) – это ответ 1.
Ответ: 1.
Задача 2. Исполнитель Чертежник
Сместиться на (a , b ) (где a, b (x, у) в точку с координатами (x + а, у + b) . Если числа a, b
(4, 2) (2, −3) (6, −1).
Повтори k раз
Конец
Команда1 Команда2 КомандаЗ повторится k раз.
Повтори 2 раз
Команда1 Сместиться на (3, 2) Сместиться на (2, 1) Конец
Сместиться на (−6, −4)
После выполнения этого алгоритма Чертёжник вернулся в исходную точку. Какую команду надо поставить вместо команды Команда1 ?
1) Сместиться на (−2, −1)
2) Сместиться на (1, 1)
3) Сместиться на (−4, −2)
4) Сместиться на (2, 1)
В задаче необходимо определить, какую команду необходимо вставить в алгоритм, чтобы Чертежник вернулся в исходную точку.
Если Чертежник возвращается в исходную точку смещения по x и по y равны 0. Команда Повтори 2 раз означает, что команды Сместиться на (3, 2) и Сместиться на (2, 1) выполнятся два раза. Для нахождения смещений по осям x и y, нужно сумму значений координат x и y умножить на 2 и приравнять к 0. Первую координату команды 1 заменим на x 1, а вторую наy 1. После цикла стоит командаСместиться на (−6, −4). Т.к. эта команда стоит вне цикла, то значения координат прибавляем уже к полученным произведениям. Получаем:
Смещение x = 2*(x 1 + 3 + 2) – 6 = 0
Смещение y = 2*(y 1 + 2 +1) – 4 = 0
Мы получили систему из двух уравнений, которую необходимо решить:
Получается команда Сместиться на (–2, –1) – это ответ 1.
Ответ: 1.
Задача 3. Исполнитель Чертежник.
Исполнитель Чертёжник перемещается на координатной плоскости, оставляя след в виде линии. Чертёжник может выполнять команду Сместиться на (a , b ) (где a, b - целые числа), перемещающую Чертёжника из точки с координатами (x, у) в точку с координатами (x + а, у + b) . Если числа a, b положительные, значение соответствующей координаты увеличивается; если отрицательные, уменьшается.
Например, если Чертёжник находится в точке с координатами (4, 2), то команда Сместиться на (2, −3) переместит Чертёжника в точку (6, −1).
Повтори k раз
Конец
означает, что последовательность команд Команда1 Команда2 Команда3 повторится k раз.
Чертёжнику был дан для исполнения следующий алгоритм:
Сместиться на (1,3)
Повтори 4 раза
Конец
Сместиться на (a , b )
Найдите такие числа a и b , при которых после выполнении программы Чертежник возвратится в исходную точку. В ответе укажите сумму этих чисел.
Решение:
Запишем выражения для нахождения смещений по осям x и y.
Сначала идет команда Сместиться на (1,3). Эта команда вне цикла и выполняется она 1 раз. К значениям координат этой команды будем прибавлять значения следующих координат.
Далее идет цикл Повтори 4 раза. Следовательно команды Сместиться на (0,2) Сместиться на (3,1) Сместиться на (–4,–4) выполняются 4 раза, т.е. сумму значений координат этих команд нужно умножить на 4.
Так как Чертежник в результате выполнения алгоритма возвращается в исходную точку, то смещения по осям x и y равны 0.
В результате получаем следующие выражения для смещений по осям x и y :
Смещение x = 1 + 4*(0 + 3 – 4) + a = 0
Смещение y = 3 + 4*(2 + 1 – 4) + b = 0
Выполняем арифметические операции и находим значения a и b:
Сумма a + b = 3 + 1 = 4
Ответ : 4.
Задача 4. Исполнитель Чертежник.
Решение:
Сначала найдем смещения Чертежника после выполнения заданного алгоритма.
Смещение x = –3 + 2*(1 – 3 + 0) = –7
Смещение y = 1 + 2*(1 + 2 – 4) = –1
Чертежник сместился по оси x на –7, а по оси y на –1. Чтобы ему вернуться в исходную точку, Чертежнику необходимо выполнить команду Сместиться на (7, 1) – это ответ 4.
Ответ: 4.
Задача 5. Исполнитель Черепашка.
Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует две команды: Вперед(n) (где n - целое число), вызывающая передвижение Черепашки на n шагов в направлении движения; Направо (m) (где m - целое число), вызывающая изменение направления движения на m градусов по часовой стрелке. Запись Повтори k [Команда1 Команда2 Команда3] означает, что последовательность команд в скобках необходимо повторить k раз.
Решение задачи:
В результате выполнения заданного алгоритма Черепашка нарисует 6 отрезков длины 50 единиц, расположенных под углом 60 градусов друг к другу.
Полный круг Черепашки составляет 360 градусов. Разделим 360: 60 = 6 – такое количество повторов необходимо Черепашке, чтобы нарисовать правильный 6-угольник. В заданном алгоритме 6 повторов. Поэтому Черепашка нарисует правильный 6-угольник – это ответ 1.
Замечание: Если бы в алгоритме было повторов меньше 6, получилась бы незамкнутая ломаная линия, а если повторов больше необходимых 6, получится все равно правильный 6-угольник, просто по некоторым линиям Черепашка пройдет несколько раз.
такой рисунок получится, если в цикле 4 повтора
Ответ: 1.
Задача 6. Исполнитель Черепашка.
Решение:
360: 72 = 5 – такое количество повторов необходимо Черепашке, чтобы при выполнении заданного алгоритма получился бы правильный многоугольник.
В заданном алгоритме 6 повторов – Черепашка нарисует правильный
5-угольник и по одной из линий пройдет два раза.
Ответ: 3.
Задача 7. Исполнитель Черепашка.
Решение: 360: 60 = 6 – такое количество повторов необходимо Черепашке, чтобы при выполнении заданного алгоритма получился бы правильный многоугольник. В алгоритме только 5 повторов, поэтому Черепашка не дорисует многоугольник и получится незамкнутая ломаная линия.
Ответ: 1.
Задача 8. Исполнитель Черепашка.
Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существуют две команды:
Вперед n
Направо m
Запись
Повтори 10 [Направо 36 Вперед 20 Направо 36]
1) Правильный пятиугольник
2) Правильный шестиугольник
3) Правильный десятиугольник
4) Незамкнутая ломаная линия
Решение:
Черепашка выполняет поворот на 36 градусов 2 раза внутри одного цикла, поэтому можно сложить 36 + 36 = 72 – это угол поворота Черепашки в заданном алгоритме.
360: 72 = 5 - такое количество повторов необходимо Черепашке, чтобы при выполнении заданного алгоритма получился бы правильный многоугольник.
В заданном алгоритм 10 повторов – этого количества повторов хватает для того, чтобы Черепашка нарисовала правильный многоугольник. По некоторым линиям Черепашка пройдет несколько раз. Т.к. количество повторов равно 5, то в результате работы заданного алгоритма Черепашка нарисует правильный 5-угольник – это ответ 1.
Ответ: 1.
Задачи для самостоятельного решения
Задача 1.
Задача 2.
Задача 3.
Задача 4.
Задача 5.
Задача 6.
Задача 7.
Задача 8.
Вперед n (где n – целое число), вызывающая передвижение Черепашки на n шагов в направлении движения.
Направо m (где m – целое число), вызывающая изменение направления движения на m градусов по часовой стрелке.
Запись Повтори k [Команда1 Команда2 Команда3] означает, что последовательность команд в скобках повторится k раз.
Черепашке был дан для исполнения следующий алгоритм:
Повтори 4 [Вперед 20 Направо 120]
Какая фигура появится на экране?
1) правильный треугольник
2) квадрат
3) правильный шестиугольник
4) незамкнутая ломаная линия
Задача 9.
Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существуют две команды:
Вперед n (где n – целое число), вызывающая передвижение Черепашки на n шагов в направлении движения.
Направо m (где m – целое число), вызывающая изменение направления движения на m градусов по часовой стрелке.
Запись Повтори k [Команда1 Команда2 Команда3] означает, что последовательность команд в скобках повторится k раз.
Черепашке был дан для исполнения следующий алгоритм:
Повтори 4 [Направо 60 Вперед 20 Направо 60]
Какая фигура появится на экране?
1) правильный треугольник
2) квадрат
3) правильный шестиугольник
4) незамкнутая ломаная линия
Задача 10.