C语言でのフィボナッチ数列の合計を求める方法は?
フィボナッチ数列の和を求める方法はいくつかありますが、ここではよく使われる 2 つの方法を紹介します。
方法一:迭代法
使用循环结构计算 Fibonacci 数列的和,将前两个数初始化为 0 和 1,然后通过循环依次计算后续的 Fibonacci 数并求和,直到达到指定的数列长度。
#include <stdio.h>
int main() {
int n, i, sum = 0;
int a = 0, b = 1;
printf("Enter the length of Fibonacci sequence: ");
scanf("%d", &n);
for (i = 0; i < n; i++) {
sum += a;
int temp = a + b;
a = b;
b = temp;
}
printf("Sum of Fibonacci sequence: %d\n", sum);
return 0;
}
再起手法
#include <stdio.h>
int fibonacci(int n) {
if (n <= 0) {
return 0;
} else if (n == 1) {
return 1;
} else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
}
int main() {
int n, i, sum = 0;
printf("Enter the length of Fibonacci sequence: ");
scanf("%d", &n);
for (i = 0; i < n; i++) {
sum += fibonacci(i);
}
printf("Sum of Fibonacci sequence: %d\n", sum);
return 0;
}
状況と条件に応じて、フィボナッチ数の和を求めるために2つの方法が使用できます。