-
А теперь попробуй так:
procedure TestRecurrence(const CurrLevel, MaxLevel : Integer);
begin
if CurrLevel>MaxLevel then Exit;
TestRecurrence(CurrLevel + 1, MaxLevel);
ShowMessage('Current level : ' + IntToStr(CurrLevel));
end; А потом подумай, почему такие разные результаты.
-
> Да потому что я думаю о рекурсии
А зачем ты о ней думаешь ? Она нафих не нужна в твоей задаче)
-
> Ега, о общих принципах рекурсии я знаю. Только как ее применить > здесь? Объясните, подтолкните мысль, будьте снисходительней.
Я не буду. Не потому, что мне жалко. Мне не жалко. Просто иначе ты никогда этого не сделаешь. Нужно через это пройти самому, понимаешь? Считай это тестом для себя на свою проф.пригодность.
-
Ега, ну не могу я понять этого. Я все понимаю, но не нужно говорить об этой задаче, как о последней инстанции. Дай хотя бы одну подсказку.
-
> Дай хотя бы одну подсказку.
тебе их дали, даже больше одной метла ждет тебя, ее программировать проще
-
Хватит издеваться. Дай подсказку по поводу рекурсии, не более.
-
> Дай подсказку по поводу рекурсии, не более.
рекруссия - вызов саого себя...
-
Ну да. Издевательство продолжается. Поставлю вопрос иначе: что ошибочного в моем коде?
-
> Поставлю вопрос иначе: что ошибочного в моем коде?
inc(counter);
> Ну да. Издевательство продолжается.
Закройте ветку.
-
читай [41] [42] [44] До полного просветвления...
-
Убирая inc, мы зацикливаем программу) Да, отличная шутка.
brother, к сожалению, высоких материй я там не нашел.
-
> viper (24.10.08 12:17) [47]
А как еще относиться к воинствующему чайнику aka ламеру ?
-
> Убирая inc, мы зацикливаем программу) Да, отличная шутка.
да зацикливаем, потомучто твой инк и вызов самого себя находятся в теле for, понятно что к чему теперь?
-
Можно просто, по-человечески помочь. По-русски. Зачем показывать, что вы выше меня? Я и так прекрасно знаю свое место. Я лишь попросил помочь. Я не могу понять, как заменить циклы рекурсией. Поясните, пожалуйста. Разве это столь сложно?
-
brother, вынося inc и вызов рекурсии за пределы цикла, результат все равно неверен.
-
> brother, вынося inc и вызов рекурсии за пределы цикла, результат > все равно неверен.
программирование без понятия как работает программа - грех, напиши алгоритм работы программы на листочке, далее ВКУЛЮЧАЙ МОЗГ!
-
> viper
Никакая рекурсия не нужна. Два цикла - один генерирует последовательность чисел, другой (вложенный) кодирует каждое число по требуемым правилам.
И всё ! За каким лешим тут еще и рекурсия нужна ? Головой думай, а не причинным местом)
-
Сергей, какие правила кодирования? Откуда вы вообще взяли, что здесь должно быть кодирование???
-
кодированием, Сергей называет преобразование получаемого числа в символы...
-
brother, алгоритм программы таков: 1. Взяли необходимое число букв для комбинаций, пусть 3 буквы (от А до С) 2. Берем первую букву 3. Прибавляем ее к результату 4. Выводим 5. Увеличиваем счетчик цикла, берем вторую букву, р-т предварительно обнулив, показываем и т.д. до конца нашего мн-ва букв. 6. Дойдя до конца мн-ва, то есть трех, снова начнем цикл. И вот тут-то я и не понимаю, как нужно двигаться дальше. Поясните!
|