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

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

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


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

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

Алгоритм может вызывать сам себя!
Например:

Задание 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

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

Задание 09-A


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


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