![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#51 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Вообще не вижу логики в этом коде. На бумажке с карандашом проследи что делает эта функция
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#52 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
![]() Код:
сначала получается так: 5/6. Если введенное число меньше равно нулю, то возвращаем 1/, если нет, то к вычисленному а прибавляем результат от (Числа - 1), т.е. получеатся: 5/6+4/5+3/4+2/3+1/2+1 Так тоже не работает Код:
from dark to light)
Последний раз редактировалось Stilet; 24.10.2015 в 18:57. |
![]() |
![]() |
![]() |
#53 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,322
|
![]()
1) int делить на int в результате даст int.
2) Последний вызов функции ничего не вернет - в результате общая сумма nan.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#54 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
![]()
Ну в первом вопросе int на float.
А во втором? Чтоб убрать nan - нужно в условии поставить >=2
from dark to light)
|
![]() |
![]() |
![]() |
#55 |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
![]()
Алексей_2012
Ты пишешь рекурсивные функции неправильно. Посмотри статью про анализ рекурсивных алгоритмов, там есть большое количество примеров. Если ты внимательно посмотришь эти примеры, то заметишь, что в рекурсивной функции всегда выделяется условие, при котором задача решается без рекурсивного вызова (тривиальное решение). Если такого условия нет, то рекурсия будет бесконечной. Т.е. я вот беру код из первого поста: Код:
вызов rabbits(mounth-1) более простой, чем изначальный rabbits(mounth), т.к. объем данных сократился на единицу. Ты явно не разобрался с этим, т.к. вот последний твой код: Код:
Вобщем посмотри примеры рекурсивных функций и попробуй найти в них что-то общее. Для начала. |
![]() |
![]() |
![]() |
#56 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
![]()
Окей, вроде переделал...работает, можно ли сделать лучше? Притом так, чтоб в параметрах функции было число типа int?
Код:
from dark to light)
Последний раз редактировалось Алексей_2012; 24.10.2015 в 18:56. |
![]() |
![]() |
![]() |
#57 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Код:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#58 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
![]()
Спасибо, а вот почему при i=1 выдается 1, а не 3?
Код:
from dark to light)
|
![]() |
![]() |
![]() |
#59 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,322
|
![]()
Или float a = chislo / (chislo + 1.0);.
По последнему коду - chislo это x? Тогда почему оно уменьшается?
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() Последний раз редактировалось BDA; 24.10.2015 в 19:48. |
![]() |
![]() |
![]() |
#60 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
![]()
Точно, опять моя невнимательность, тороплюсь сделать 10 рекурсий до после завтра.
А как закодить в функции то, что при i=1 нужно вычислить из 1 то/, что получилось на предыдущий итерации. Код:
Все равно не получилось сделать так, чтоб в числителе было 5..3...1, а в знаменателе то же самая i, но с другими значениями Код:
from dark to light)
Последний раз редактировалось Stilet; 25.10.2015 в 10:08. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
рекурсия | Ника-Вероника | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 23.03.2012 21:43 |
Рекурсия | unbanned | Паскаль, Turbo Pascal, PascalABC.NET | 7 | 19.01.2012 11:25 |
Рекурсия | dusya9992 | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 29.08.2010 14:14 |
Рекурсия | Solnze2 | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 09.06.2010 09:28 |
Рекурсия | Shadows_Behind | Помощь студентам | 6 | 26.05.2010 15:07 |