вправо

advertisement
Исполнитель Робот
Робот действует на прямоугольном клетчатом поле. Между некоторыми
клетками могут быть расположены стены. Какие-то клетки могут быть
закрашены. Сам Робот всегда занимает ровно одну клетку поля.
Робот умеет выполнять всего 17 команд: 5 команд-приказов и 12 командвопросов.
Команды – приказы: вверх, вниз, вправо, влево, закрасить.
По командам вверх, вниз, влево, вправо Робот перемещается в соседнюю клетку
в указанном направлении. Если на пути оказывается стена, команда не может
быть выполнена.
По команде закрасить Робот закрашивает клетку, в которой стоит. Если клетка уже была закрашена, она
останется закрашенной, т.е. команда будет выполнена, но никаких видимых изменений не произойдет.
Задачи без условий
1. Дана программа для Робота (команды в ней пронумерованы):
1.
2.
3.
4.
5.
6.
вправо
вниз
вниз
вправо
вниз
влево
Нарисуйте в тетради клетчатое поле Робота. Выбрав произвольное начальное положение
Робота, поставьте на клеточке, где он оказался после выполнения первой команды, число 1,
после второй команды число 2 и т.д.
2. Вот как ходил Робот, выполняя новую программу (рис. 1). Первой командой в программе
была команда влево. Напишите, какую программу выполнил
Робот.
3. Робот выполнил программу:
закрась
вправо
вправо
закрась
вправо
вправо
закрась
вверх
влево
закрась
влево
влево
влево
закрась
рисунок 1
Нарисуйте в тетради клетчатое поле Робота и закрасьте клетки в соответствии
с этой программой.
4. На рисунке 2 показано начальное положение Робота. Отмечены клетки,
которые должны быть закрашены после выполнения
программы. Напишите программу, выполняя которую
Робот закрасит указанные клетки.
рисунок 2
5. Напишите программы, в результате выполнения
которых на поле Робота появятся фигуры,
изображенные на рисунке 3.
рисунок 3
6. Переведите Робота в
клетку Dза три хода (рисунок 4).
а) напишите три разные программы, делающие это за три
хода.
б) Может ли Робот попасть в клетку D за четыре хода? за
пять ходов? за шесть ходов?
7. Робот выполнил программу:
рисунок 4
вправо
вверх
вправо
вверх
вниз
вниз
вниз
влево
вниз
а) Нарисуйте путь Робота на плоскости. Обозначьте конечное положение Робота буквой D.
б) Напишите более короткую программу, переводящую Робота из того же начального
положения в клетку D. Сколько команд в вашей короткой программе?
8. Ниже приведены четыре программы
вверх
влево
вверх
вправо
вправо
вверх
влево
вниз
вправо
вниз
влево
вниз
влево
закрась
вправо
вверх
влево
вправо
вправо
вниз
закрась
влево
вправо
закрась
вверх
влево
влево
вверх
вправо
вниз
вправо
вправо
закрась
закрась
После выполнения каких из программ Робот:
а) окажется в одной и той же клетке;
б) сделает одно и то же число шагов;
в) закрасит одни и те же клетки?
9. Робот начал свой путь в клетке А и закончил его в клетке В, выполнив следующую
программу:
влево
вниз
вниз
вниз
вправо
вправо
вверх
влево
вниз
Не рисуя пути Робота, напишите более короткую программу, переводящую его из клетки А в
клетку В.
10. Робот начал свой путь в клетке А и, выполни некоторую
программу, закончил ее в клетке В (рис.5). Если Робот начнет свой
путь в клетке С, то после выполнения той же программы он
закончит его в клетке D. Перерисуйте рисунок в тетрадь и
поставьте для каждой буквы С букву Dв нужной клетке.
рисунок 5
11. Робот выполняет программу:
вниз
закрась
влево
виз
вправо
вверх
закрась
вправо
закрась
а) Нарисуйте в тетради клетчатое поле Робота и закрасьте клетки в соответствии с этой
программой.
б) Напишите наиболее короткую программу, в результате выполнения которой оказались бы
закрашенными те же клетки.
Download