«Рекурсия»

- 1 -
Рекурсия

|t_| Доброго времени суток!

|go| Готов с вниманием внимать,

все то, что ты, zz сказать.

(переменная zz пока не определена).

|t_| Давай присвоим zz := 'хотел'.

Напомню, сегодня, наша тема - рекурсия.

|go| Я посмотрел, что говорит на эту тему википедия - что-то уж очень закручено... но вообще-то мы такое проходили... Фотография: мужик смотрит на фотографию на ней он же смотрит на туже фотографию, на ней...

|t_| Уже легче. Давай использовать облегченное определение. Рекурсия, это когда внутри процедуры (функции) есть вызов ее самой:

procedure МояПроцедура(параметры);

begin

...

что-то там делается

...

if условие потребности в рекурсии

then МояПроцедура(параметры);

...

и еще что ни будь сделаем

...

end;

Условие потребности в рекурсии, рано или поздно должно стать false иначе она станет бесконечной и программа зависнет. Возможен и такой вариант:

function МояФункция(параметры):boolean;

begin

...

что-то там делается

...

if МояФункция(параметры)

then exit;

...

result := условие выхода из рекурсии

...

end;

Конечно же, возможны сотни других вариантов...

Надеюсь, что не очень напряг тебя теорией, теперь к практике.

|go| Да нет, все нормально. Поехали.

:(

Yes no,

all OK.

Let's go.

:)

|t_| Сегодня у тебя поэтическое настроение, это хорошо...

- 1 -