Школа179: /Информатика//Информатика / Архив/2010//Информатика / Архив / 2010 / 7 Б/20091116 ...

 
Это старая версия Информатика/Архив/2010/7Б/20091116 за 2009-11-15 21:09:31..

7Б «Робот». Задание №9: Рекурсия


Плюсник
Выполненные задания должны быть сохранены в каталоге ~/kumir/09/.
Стартовые обстановки находятся в каталоге /home/pub/kumir/fields/09/.
Загрузить среду Кумир для Windows можно отсюда
Архив со стартовыми обстановками (для самостоятельной работы) можно загрузить отсюда

Что умеет робот?

Алгоритм может вызывать сам себя!
Пример рекурсивного алгоритма, перемещающего робота вправо до стены:


Аналогичный алгоритм, перемещающий робота вправо до стены и закрашивающий клетку у стены:


Алгоритм, перемещающий робота вправо до стены, затем возвращающий его в исходную клетку:


Задание 04-А

Робот находится в горизонтальном коридоре. Напишите алгоритм «к стене вправо закрашивая путь», который перемещает робота до правого конца коридора, закрашивая все клетки на своем пути, включая начальную.
В этой задаче нельзя пользоваться конструкцией цикла нц...кц.


04-A

Задание 04-B

Робот находится в горизонтальном коридоре. Напишите алгоритм «к стене вправо закрашивая путь затем вернуться», который перемещает робота до правого конца коридора, закрашивая все клетки на своем пути, включая начальную, затем возвращает в исходную клетку.
В этой задаче нельзя пользоваться конструкцией цикла нц...кц.


04-B

Задание 04-C

Робот находится в горизонтальном коридоре. Напишите алгоритм «к стене вправо затем вернуться», который перемещает робота до правого конца коридора, закрашивает самую правую клетку коридора, а затем возвращает его в исходную клетку.


04-C

Задание 04-D

Робот находится в горизонтальном коридоре. Справа от робота есть закрашенная клетка. Робот должен дойти до закрашенной клетки, пройти ее, затем пройти вправо на такое же расстояние, то есть робот должен остановиться в клетке, симметричной начальной позиции относительно закрашенной клетки.


04-D

Задание 04-E

Робот находится в горизонтальном коридоре. Справа от робота есть закрашенная клетка. Робот должен дойти до закрашенной клетки, пройти ее, затем пройти вправо на расстояние, вдвое большее, чем первоначальное.


04-E

Задание 04-F

Робот находится снизу от бесконечной стены (в соседней с ней клетке). Где-то слева от робота в стене есть проход. Робот должен дойти до прохода, пройти через проход и вернуться вправо на такое же расстояние (то есть робот должен оказаться в клетке, соседней с первоначальным положением, но по другую сторону стены).


04-F

Задание 04-G

Робот находится снизу от бесконечной стены, не обязательно в соседней со стеной клетке. Где-то слева от робота в стене есть проход. Робот должен обойти стену и оказаться в клетке, симметричной начальному положению относительно стены.


04-G

Задание 04-H

Робот находится снизу от бесконечной стены, не обязательно в соседней со стеной клетке. Передвиньте робота вправо на расстояние, равное расстоянию от робота до стены (робот должен остановиться в клетке, расположенной на это же горизонтали).


04-H

Задание 04-I

Робот находится в горизонтальном коридоре. Справа от робота есть тупик. Возможно, что справа от робота есть клад (закрашенная клетка). Напишите программу, которая перемещает робота в клетку с кладом, если есть клад, или возвращает его в исходное положение, если клада нет.


04-I

Задание 04-J

Робот находится в левом нижнем углу прямоугольного поля. В одной из клеток поля есть клад (закрашенная клетка). Переместите робота в клетку с кладом. В этой задаче нельзя использовать циклы.


04-J

Задание 04-K

Робот находится в горизонтальном коридоре. Переместите робота в клетку, симметричную относительно середины коридора.
В этой задаче можно пользоваться циклом.


04-K

Задание 04-L

Робот находится в левом конце горизонтального коридора. Коридор состоит из нечетного числа клеток. Переведите робота в среднюю клетку коридора.


04-L

Задание 04-M

Робот находится внутри лабиринта, при этом роботу доступно только ограниченное количество клеток. Закрасьте все клетки, доступные роботу.


04-M

Задание 09-A


Решение задачи сохраните в файле ~/kumir/09/A.kum
Проверьте свой алгоритм на всех стартовых обстановках робота, находящихся в каталоге /home/pub/kumir/fields/09/A


 
Файлов нет.[Показать файлы/форму]