📅  最后修改于: 2023-12-03 14:39:59.818000             🧑  作者: Mango
斐波那契数列是指每个数都是前两个数的和,起始两个数通常是0和1。斐波那契三角形是把斐波那契数列写成三角形的形式,其中第一行只有一个1,每个较大的数字是它正上方和左上方的数字的和。
斐波那契三角形的第n行有n个数字,第一个数字为第n个斐波那契数,第n-1个数字为第n-2个斐波那契数。因此我们可以通过递归的方式计算斐波那契数列,进而生成斐波那契三角形。
#include <iostream>
using namespace std;
int fibonacci(int n) {
if (n <= 1) {
return n;
} else {
return fibonacci(n-1) + fibonacci(n-2);
}
}
void printFibonacciTriangle(int n) {
for (int i = 0; i < n; i++) {
for (int j = 0; j <= i; j++) {
cout << fibonacci(j) << " ";
}
cout << endl;
}
}
int main() {
int n = 6; // 生成6行斐波那契三角形
printFibonacciTriangle(n);
return 0;
}
首先定义了一个递归函数fibonacci
,用于计算斐波那契数列中第n个数的值。之后定义了一个函数printFibonacciTriangle
,用于打印斐波那契三角形,其中通过两重循环实现。
在主函数中,首先定义了要生成的行数n
,然后调用函数printFibonacciTriangle
生成相应行数的斐波那契三角形。
以上代码运行结果如下:
1
1 1
1 2 3
1 3 6 10
1 4 10 20 35
1 5 15 35 70 126