21xrx.com
2024-12-22 21:47:47 Sunday
登录
文章检索 我的文章 写文章
如何用C++打印杨辉三角?
2023-07-02 03:15:17 深夜i     --     --
C++ 打印 杨辉三角

杨辉三角是一种数学图形,其规律是从顶部开始,每个数字是其左上方和右上方数字之和。它可以用来研究组合问题,并且通常在程序设计中使用。

在C++中打印杨辉三角不是很困难,只需要使用嵌套的循环和一些简单的数学计算就可以实现。以下是一个简单的程序示例,用于打印前8行杨辉三角。


#include<iostream>

using namespace std;

int main(){

  int row, coef = 1;

  cout << "Enter the number of rows: ";

  cin >> row;

  for(int i = 0; i < row; i++){

    for(int j = 1; j <= row - i; j++)

      cout << " ";

    

    for(int j = 0; j <= i; j++){

      if(j == 0 || i == 0)

        coef = 1;

      else

        coef = coef * (i - j + 1) / j;

      cout << coef << " ";

    }

    cout << endl;

  }

  return 0;

}

这个程序首先要求用户输入要打印的行数,然后使用两个嵌套的循环来打印杨辉三角。外层循环从0到row-1遍历每一行,而内层循环分别打印该行前面的空格和该行中的数字。在内层循环中,我们使用if-else语句来计算当前要打印的数字。如果j等于0或i等于0,则数字为1。否则,我们使用公式coef = coef * (i - j + 1) / j来计算数字,其中coef表示当前要打印的数字,i和j分别表示当前行数和该行的位置。

这个程序可以输出以下杨辉三角:

     1

     1 1

    1 2 1

    1 3 3 1

   1 4 6 4 1

   1 5 10 10 5 1

  1 6 15 20 15 6 1

1 7 21 35 35 21 7 1

尽管这个程序可以打印杨辉三角,但它仍然有改进的空间。例如,我们可以将一些常量定义为常量,并使用更好的变量名称来使程序更容易理解。通过对程序的改进,我们可以让它更加易读和易维护。

这就是如何使用C++打印杨辉三角的简单方法。无论您是初学者还是经验丰富的程序员,这个程序都可以帮助您更好地理解嵌套的循环和数学计算。希望您可以通过学习这个程序来打印自己的杨辉三角,并将这些概念应用于其他计算机编程问题中。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复