![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| 310V |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 11.2.2006 Репутация: нет Всего: нет |
Помогите по сабжу.
ни как не могу понять
например берем за n = 2 - получается 1 (это все по коду) тогда почему если взять за n = 6 получается ни (6-1 + 6-2 ) 9, а 8?, так выдает консоль. |
|||
|
||||
| volvo877 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2073 Регистрация: 15.11.2004 Репутация: 1 Всего: 116 |
потому, что НЕ (6-1 + 6-2), а вот так: fib(6) = fib(5) + fib(4) = (fib(4) + fib(3)) + (fib(3) + fib(2)) = ... и так далее, пока не останутся только fib(0) и fib(1)... Сложишь все и получишь именно 8... |
|||
|
||||
| cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 2 Всего: 99 |
Функция у тебя рекурсивная и соответственно
fib(6) = fib(5)+fib(4) = fib(4)+fib(3)+fib(3)+fib(2) = fib(3)+fib(2)+fib(2)+1+fib(2)+1+1+0 = fib(2)+1+1+0+1+0+1+0+3 = fib(1)+fib(0)+7 = 8 -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
| 310V |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 11.2.2006 Репутация: нет Всего: нет |
Все понял, пасибо
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |