什么是N阶杨辉三角形C++代码
时间: 2024-10-18 12:06:27 浏览: 30
C++杨辉三角形算法代码
N阶杨辉三角形,又称为帕斯卡三角形,是一种数学图形,它是一个由数字排列成的三角形,每个数字都是上一行两个相邻数字之和。这个图案最早由中国的南宋数学家杨辉发现,所以得名。N阶意味着每一行有N个数字。
下面是生成N阶杨辉三角形的一个简单的C++代码示例:
```cpp
#include<iostream>
using namespace std;
void printPascalTriangle(int n) {
for (int line = 0; line < n; line++) {
// 每行的数字数量等于当前行数加一
for (int i = 0; i <= line; i++) {
// 对于首尾元素,直接输出1
if (i == 0 || i == line)
cout << 1 << " ";
else
// 计算并输出每个位置的值(上一行对应位置相乘)
cout << factorial(line) / (factorial(i) * factorial(line - i)) << " ";
}
cout << endl; // 换行
}
}
// 计算阶乘
unsigned long long factorial(int n) {
return (n == 0 || n == 1) ? 1 : n * factorial(n - 1);
}
int main() {
int N;
cout << "请输入杨辉三角的阶数: ";
cin >> N;
printPascalTriangle(N);
return 0;
}
```
这段代码首先定义了一个函数printPascalTriangle,它接受一个整数n表示阶数,然后利用内层循环计算每个位置的值,再用外层循环打印整个三角形。`factorial`函数用于计算阶乘。
阅读全文