Просмотр кода страницы Робот 2 страница

====%%(wacko wrapper=text wrapper_align=center) Игра в Робота %%==
%%(wacko wrapper=text wrapper_align=center) (Часть II) %%

%%(wacko wrapper=text wrapper_align=justify)#|
||
//**Рекурсией**// называется ситуация, когда процедура прямо или косвенно, обращается к самой себе. То есть когда имеется цепочка вызовов //**P""""vv1vv""""**// --> //**P""""vv2vv""""**// --> ... --> //**P""""vvnvv""""**// --> //**P""""vv1vv""""**//.

**!!Внимание&#33!!** Каждая из задач 1 -- 3 разбивается на три подзадачи (a), (b), (c). В пунктах (a) нужно написать программы, использующие рекурсию и не использующих проверки **закрашено**,  в пункте  (b) использующие проверку **закрашено**,   и не использующих рекурсии;  в пункте  (c) доказать невозможность, построить программы без использования рекурсии или проверки **закрашено** (т. е. невозможно решить эти задачи так, как в I-м листочке.)
||%%


=====%%(wacko wrapper=text wrapper_align=center) Задачи %%==

**0.**
  __**Дано:**__ Робот находится в бесконечном в одну сторону (ограниченного слева и неограниченного справа) коридоре высотой в одну клетку, ни одна из клеток которого не закрашена. 
  __**Надо:**__ Робот находится в исходной клетке, начальная клетка коридора закрашена.
  __**Примечание:**__   Использовать проверку **закрашено** запрещено! 


**1.** 
  __**Дано:**__ Робот находится на расстоянии //**n**// от начала  бесконечного в одну сторону (ограниченного слева и неограниченного справа) коридора высотой в одну клетку, ни одна из клеток которого не закрашена.
  __**Надо:**__ Робот находится на расстоянии 2//**n**// от начала коридора.

  
**2.**
  __**Дано:**__ Робот находится в коридоре шириной в 1 клетку, ни одна из клеток которого не закрашена.
  __**Надо:**__ Робот находится в клетке, симметричной исходной.
   

**3.**
  __**Дано:**__ На бесконечном поле ни одна из клеток которого не закрашена, есть одна горизонтальная стена неизвестной ширины, Робот стоит у нее снизу.
  __**Надо:**__ Надо: Робот оказался на одну клетку севернее исходного положения (обойдя стену).
 

**4.**
  Доказать, что любой цикл в программе можно заменить  на рекурсивную функцию, не содержащую циклов.


**5.**
  __**Дано:**__ Робот находится в лабиринте ни одной клетки которого не закрашено; на поле расставлены стены, так, что число доступных для Робота клеток конечно.
  __**Надо:**__ Закрасить все доступные клетки.