| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > Как взобраться на Ханойскую башню??? |
| Автор: Politexnik 13.5.2008, 16:22 | ||
| Здравствуйте!!! Встретилась мне в учебнике Дейтелов задача о Ханойских башнях. Вероятно вы ее знаете. Задача такая: Даны три стержня, на один из которых нанизаны четыре кольца, причем кольца отличаются размером и лежат меньшее на большем. Задача состоит в том, чтобы перенести пирамиду из четырех колец на другой стержень. За один раз разрешается переносить только одно кольцо, причём нельзя класть большее кольцо на меньшее. Бился неделю. Безрезультатно. И вот решил покопатся в интернете, где и нашел решение с рекурсией. Оно работает и выглядит так
Только вот в чем беда. Не могу представить КАК это работает. ЧТО после чего вызывается. До этого я сталкивался с рекурсиех только в функциях возвращающох значения, а не в void. Помогите пожалуйста разобраться. Заранее благодарен. |
| Автор: IKM2007 13.5.2008, 19:23 | ||||||||
| Politexnik, Здесь в
a->Старт b->Финиш c->Резерв(где на время можно хранить диски) когда n<=0, выполняется выход из функции(конец рекурсии).
|