C++ 代码实现杨辉三角 - 详细讲解和示例
本文将使用 C++ 编写一个程序来打印出杨辉三角。以下是代码示例:
#include <iostream>
#include <vector>
std::vector<std::vector<int>> generatePascalTriangle(int numRows) {
std::vector<std::vector<int>> triangle;
if (numRows == 0)
return triangle;
triangle.push_back({1});
for (int i = 1; i < numRows; i++) {
std::vector<int> row(i + 1, 1);
for (int j = 1; j < i; j++) {
row[j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
}
triangle.push_back(row);
}
return triangle;
}
void printPascalTriangle(const std::vector<std::vector<int>>& triangle) {
int numRows = triangle.size();
for (int i = 0; i < numRows; i++) {
int numSpaces = numRows - i - 1;
for (int j = 0; j < numSpaces; j++) {
std::cout << ' ';
}
for (int j = 0; j <= i; j++) {
std::cout << triangle[i][j] << ' ';
}
std::cout << std::endl;
}
}
int main() {
int numRows;
std::cout << "Enter the number of rows for Pascal's Triangle: ";
std::cin >> numRows;
std::vector<std::vector<int>> triangle = generatePascalTriangle(numRows);
std::cout << "Pascal's Triangle:" << std::endl;
printPascalTriangle(triangle);
return 0;
}
你可以将以上代码拷贝到一个名为 pascal_triangle.cpp 的文件中,并使用 C++ 编译器进行编译。运行程序后,输入行数,即可打印出相应行数的杨辉三角。
原文地址: https://www.cveoy.top/t/topic/bDTI 著作权归作者所有。请勿转载和采集!