Вычисление чисел Фибоначчи - C (СИ)
Формулировка задачи:
Последовательность чисел Фибоначчи 0, 1, 1, 2, 3, 5, 8, 13, 21 ... начинается с цифр 0 и 1 и имеет ту особенность, что каждое следующее число является суммой двух предыдущих. Написать программу, которая вычисляет n чисел Фибоначчи, где количество таких чисел (n) задается пользователем. Предоставить возможность пользователю вводить разные значения n (до нажатия клавиши Esc)
Решение задачи: «Вычисление чисел Фибоначчи»
textual
Листинг программы
bash-4.3~$ vim ./fib.c
bash-4.3~$ cat fib.c
#include <stdio.h>
#include <stdlib.h>
int
fibIterative (int a, int b, int n) {
return n ? fibIterative(b, a + b, n - 1) : a;
}
int
fib (int n) {
return fibIterative(0, 1, n);
}
int
main (int argc, char ** argv)
{
int i = 0;
for(; i < 12; i += 3) {
fprintf(stdout, "fib(%i) = %i\n", i, fib(i));
}
exit(EXIT_SUCCESS);
}
bash-4.3~$ gcc ./fib.c && ./a.out
fib(0) = 0
fib(3) = 2
fib(6) = 8
fib(9) = 34
bash-4.3~$