Изменить код вызываемой функции для расчета ряда фибоначчи; заменить рекурсию на цикл; добавить вывод на экран - C (СИ)
Формулировка задачи:
Помогите изменить код вызываемой функции для расчета ряда фибоначчи, но заменить рекурсию на цикл, и что бы она выводилась на экране)
что то перечитал все темы но никак правильно не могу с циклом сделать
unsigned long Fibonacci(unsigned n) { if (n > 2) return Fibonacci(n-1) + Fibonacci(n-2); else return 1; }
Решение задачи: «Изменить код вызываемой функции для расчета ряда фибоначчи; заменить рекурсию на цикл; добавить вывод на экран»
textual
Листинг программы
int n1 = 1, n2 = 1, i, length, fib = 0; scanf("%d", length); while (i < length) { fib = n1 + n2; n1 = n2; n2 = fib; ++i; } printf("Fibonacci of %d is: %d", length, fib);
Объяснение кода листинга программы
- Объявлены переменные:
n1
,n2
,i
,length
,fib
- С помощью
scanf
вводится значение переменнойlength
- Запускается цикл, который выполняется
length
раз - Внутри цикла переменная
fib
вычисляется как суммаn1
иn2
- Значение
n1
присваивается переменнойn2
- Значение
n2
присваивается переменнойfib
- Увеличивается значение переменной
i
на 1 - После выполнения цикла выводится на экран строка
Fibonacci of [значение переменной
length] is: [значение переменной
fib]
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д