Написать рекурсивную функцию вычисления K-го члена последовательности Фибоначчи - C (СИ)
Формулировка задачи:
написать рекурсивную функцию вычисления K-го члена последовательности Фибоначчи (1 и 2 члены равны 1, каждый следующий равен сумме предыдущих )
пожалуйста с комментариями.
Решение задачи: «Написать рекурсивную функцию вычисления K-го члена последовательности Фибоначчи»
textual
Листинг программы
size_t fib(size_t count)
{
if (count < 2)
{
return 1;
}
return fib(count-1) + fib(count-2);
}
Объяснение кода листинга программы
- Передаем в функцию fib(size_t count) целое число count, которое указывает на номер K-го члена последовательности Фибоначчи, который мы хотим вычислить.
- В функции происходит проверка: если count < 2, то возвращаем 1, так как первые два члена последовательности Фибоначчи равны 1.
- Если count >= 2, то возвращаем сумму двух предыдущих членов последовательности Фибоначчи, которые вычисляются в вызове функции fib(count-1) и fib(count-2).
- Рекурсивный процесс продолжается до тех пор, пока не будет достигнуто условие count < 2.
- Возвращаемое значение функции fib(count) будет являться K-м членом последовательности Фибоначчи.