Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 08.08.2014
Сообщений: 7

Рекурсивная функция

26.11.2017, 17:47. Показов 2309. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Написать реализацию рекурсивной функции, вычисляющую n-ый
элемент ряда Фибоначчи, но без экспоненциально растущей рекур-
сии
Замечание:
Нужно создать две функции: одна вызывается непосредственно из main и вы-
зывает вторую, вспомогательную, которая и является рекурсивной.
Прошу помощи, на учебе совсем завал 😔
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.11.2017, 17:47
Ответы с готовыми решениями:

Рекурсивная функция, вычисляющая факториал
Описать рекурсивную функцию Fact2 (N) вещественного типа, вычисляющую значение двойного факториала N!! =...

Рекурсивная функция для нахождения чисел Фибоначчи
Здравствуйте. Нужно создать программу для нахождения числа Фибоначчи(вводишь с клавы порядковый номер, а выводит само число) с...

Рекурсивная функция для подсчета количества цифр в заданном натуральном числе
Нужно сделать рекурсивную функцию для подсчета количества цифр в заданном натуральном числе. Я смог сделать только обычную функцию для...

3
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
26.11.2017, 19:34
Внизу этой страницы группируются схожие темы
например эта: Рекурсивная функция для нахождения чисел Фибоначчи
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
26.11.2017, 20:14
Лучший ответ Сообщение было отмечено Sm1leTwo как решение

Решение

Sm1leTwo, в первом приближении, вспомогательная не нужна
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Option Explicit
 
Dim nCalls& 'только для подсчета вызовов, для реальной работы не нужно
 
Function f(n As Long) As Double
Static clFibo As New Collection
nCalls = nCalls + 1 'только для подсчета вызовов, для реальной работы не нужно
  If n < 3 Then
    f = 1
  Else
    With clFibo
      If .Count < 2 Then .Add 1: .Add 1
      If n - .Count <= 1 Then
        f = .Item(n - 1) + .Item(n - 2)
        If n - .Count = 1 Then .Add f
      Else
        f = f(n - 1) + f(n - 2)
      End If
    End With
  End If
End Function
 
Sub test()
  nCalls = 0
Debug.Print f(50), nCalls
End Sub
fever brain, в той теме как раз экспоненциально растущая рекурсия.
1
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38180 / 21115 / 4307
Регистрация: 12.02.2012
Сообщений: 34,724
Записей в блоге: 14
26.11.2017, 22:11
Лучший ответ Сообщение было отмечено Sm1leTwo как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Function Fib(n As Integer, Optional c As Long = 0, Optional p As Long = 1) As Long
  If (n = 0) Then
    Fib = c
  Else
    Fib = Fib(n - 1, c + p, c)
  End If
End Function
 
Sub test()
    For i% = 1 To 40
        Debug.Print Fib(i%)
    Next i%
End Sub
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.11.2017, 22:11
Помогаю со студенческими работами здесь

Рекурсивная функция у меня другая но только не рекурсивная
Добрый день все ! Писал я про задачку но так и не кто откликнулся напомню о чем речь &quot; Добрый день форумчане! Мне...

Рекурсивная функция
Добрый день. Как решить рекурсивную функцию? Задание: y0 = m, m - натуральное число. yn = 2y2n-1 для n&gt;1.

Рекурсия: проверить, соответствует ли введенная последовательность символов понятию список_списков
Доброго времени суток. Мне необходимо написать рекурсивную функцию для решения задачи: Помогите пожалуйста придумать алгоритм, никак...

Рекурсивная функция
Помогите написать рекурсивную функцию, которая формирует в обратном порядке текст, задаваемый пользователем с клавиатуры.

Рекурсивная функция
Используя рекурсивную функцию, найти максимальный элемент из n элементов последовательности целых чисел, вводимых с клавиатуры. PASCAL Turbo


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru