|
0 / 0 / 0
Регистрация: 18.06.2020
Сообщений: 13
|
|||||||||||
Задача «Числа Фибоначчи»13.07.2020, 17:23. Показов 41036. Ответов 7
Добрый день! Объясните, пожалуйста, на пальцах, как работает этот код. Я смотрю по компилятору (например для цифры 6) и, все равно, не понимаю, как он отрабатывает. Ответ он выдает правильный.
Условие Напишите функцию fib(n), которая по данному целому неотрицательному n возвращает n-e число Фибоначчи. В этой задаче нельзя использовать циклы — используйте рекурсию.
Мое решение более костыльное:
0
|
|||||||||||
| 13.07.2020, 17:23 | |
|
Ответы с готовыми решениями:
7
Введите размер массива N и заполните массив из N элементов числами Фибоначчи. Первые два числа Фибоначчи равны 1, а кажд |
|
8 / 8 / 0
Регистрация: 15.02.2020
Сообщений: 195
|
|
| 13.07.2020, 18:25 | |
|
seregahlevnoj, изучи рекурсию и всё поймёшь
0
|
|
|
Супер-модератор
|
|||||||
| 13.07.2020, 18:38 | |||||||
Сообщение было отмечено seregahlevnoj как решение
Решение
1
|
|||||||
|
|
|
| 14.07.2020, 07:53 | |
|
Если n больше двух, то приходится вычислять два предыдущих числа Фибоначчи и их складывать. Вычислять можно при помощи той же самой функции, но с другим параметром. Единственная логическая трудность здесь та, что мы обращаемся к функции, которая еще не закончила прежнюю работу. Можно это представить себе так, что у функции может быть несколько работ, которые она может приостанавливать и переходить к какой-нибудь другой существующей работе или же начать новую работу. Или можно считать, что написано много вариантов функции с разными именами. Каждый раз, когда надо обратиться к функции мы выбираем тот вариант, который не занят работой.
1
|
|
|
0 / 0 / 0
Регистрация: 18.06.2020
Сообщений: 13
|
||||
| 14.07.2020, 09:57 [ТС] | ||||
|
В задаче рекурсия в рекурсии
Добавлено через 33 секунды Добавлено через 11 минут Как только n = 2 или 1, то функция принимает значение 1, тем самым, как бы, съедая, эти значения. Потом происходит рекурсия в рекурсии и процесс повторяется. n= 6 5 4 3 2 - процесс пошел первый раз оно съедает до 3х, потом до 4х, а потом магическим образом выводит ответ --- в итоге таки доходит до суммы двух предыдущих значений. Я только начал изучать рекурсию. Мне не ясно, куда деваются все эти "съеденные" значения функции. В задачах перед этим с подобным выводом выводится сумма значений. Добавлено через 11 минут За генератор также спасибо!
0
|
||||
|
|
|
| 14.07.2020, 10:54 | |
|
seregahlevnoj, Когда вы печатаете переменные из программы, то программа использует те значения, которые относятся к работе, которую она выполняет. Для каждого входа в программу создается контекст исполнения (работа), которая содержит значения параметров, локальных переменных и место, на которой работа была прервана. После выхода из программы контекст уничтожается (затирается контекстами других работ) Так что у параметров и переменных одновременно существует много разных значений в разных контекстах.
0
|
|
|
0 / 0 / 0
Регистрация: 18.06.2020
Сообщений: 13
|
|
| 14.07.2020, 11:13 [ТС] | |
|
Благодарю, вы интересно описываете все словами. Более привычно видеть пример в коде. Тогда решение, кмк, легче воспринимается.
0
|
|
|
|
|
| 14.07.2020, 21:35 | |
|
seregahlevnoj, а разве у вас не было кода? Вы с него начали и попросили объяснить.
0
|
|
| 14.07.2020, 21:35 | |
|
Помогаю со студенческими работами здесь
8
Задача (числа фибоначчи) Задача на Числа Фибоначчи
Задача на C++ числа Фибоначчи Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|