7Б 01.12.2008 Задание на робота
Архив с примерами стартовых обстановок:
http://server.179.ru/~dk/robot/fields_2009_all.zip
Ваши решения должны быть записаны в файлах с именами:
December/01/04-A.kum
December/01/04-B.kum
и т.д.
Что умеет робот?
Алгоритм может вызывать сам себя!
Например:
Задание 04-А
Робот находится в горизонтальном коридоре. Напишите алгоритм «к стене вправо закрашивая путь», который перемещает робота до правого конца коридора, закрашивая все клетки на своем пути, включая начальную.
В этой задаче нельзя пользоваться конструкцией цикла нц...кц.
Задание 04-B
Робот находится в горизонтальном коридоре. Напишите алгоритм «к стене вправо закрашивая путь затем вернуться», который перемещает робота до правого конца коридора, закрашивая все клетки на своем пути, включая начальную, затем возвращает в исходную клетку.
В этой задаче нельзя пользоваться конструкцией цикла нц...кц.
Задание 04-C
Робот находится в горизонтальном коридоре. Напишите алгоритм «к стене вправо затем вернуться», который перемещает робота до правого конца коридора, закрашивает самую правую клетку коридора, а затем возвращает его в исходную клетку.
Задание 04-D
Робот находится в горизонтальном коридоре. Справа от робота есть закрашенная клетка. Робот должен дойти до закрашенной клетки, пройти ее, затем пройти вправо на такое же расстояние, то есть робот должен остановиться в клетке, симметричной начальной позиции относительно закрашенной клетки.
Задание 04-E
Робот находится в горизонтальном коридоре. Справа от робота есть закрашенная клетка. Робот должен дойти до закрашенной клетки, пройти ее, затем пройти вправо на расстояние, вдвое большее, чем первоначальное.
Задание 04-F
Робот находится снизу от бесконечной стены (в соседней с ней клетке). Где-то слева от робота в стене есть проход. Робот должен дойти до прохода, пройти через проход и вернуться вправо на такое же расстояние (то есть робот должен оказаться в клетке, соседней с первоначальным положением, но по другую сторону стены).
Задание 04-G
Робот находится снизу от бесконечной стены, не обязательно в соседней со стеной клетке. Где-то слева от робота в стене есть проход. Робот должен обойти стену и оказаться в клетке, симметричной начальному положению относительно стены.
Задание 04-H
Робот находится снизу от бесконечной стены, не обязательно в соседней со стеной клетке. Передвиньте робота вправо на расстояние, равное расстоянию от робота до стены (робот должен остановиться в клетке, расположенной на это же горизонтали).
Задание 04-I
Робот находится в горизонтальном коридоре. Справа от робота есть тупик. Возможно, что справа от робота есть клад (закрашенная клетка). Напишите программу, которая перемещает робота в клетку с кладом, если есть клад, или возвращает его в исходное положение, если клада нет.
Задание 04-J
Робот находится в левом нижнем углу прямоугольного поля. В одной из клеток поля есть клад (закрашенная клетка). Переместите робота в клетку с кладом. В этой задаче нельзя использовать циклы.
Задание 04-K
Робот находится в горизонтальном коридоре. Переместите робота в клетку, симметричную относительно середины коридора.
В этой задаче можно пользоваться циклом.
Задание 04-L
Робот находится в левом конце горизонтального коридора. Коридор состоит из нечетного числа клеток. Переведите робота в среднюю клетку коридора.
Задание 04-M
Робот находится внутри лабиринта, при этом роботу доступно только ограниченное количество клеток. Закрасьте все клетки, доступные роботу.