21xrx.com
2024-12-22 21:23:27 Sunday
登录
文章检索 我的文章 写文章
《C++打印杨辉三角前n行算法实验报告》
2023-07-04 23:37:18 深夜i     --     --
C++ 杨辉三角 前n行 算法 实验报告

在本次算法实验中,我们使用了C++语言实现了杨辉三角前n行的打印算法。杨辉三角是一种有趣的数学图形,它的每一行都是由组合数构成的,具有很多有趣的性质和应用。

我们首先定义一个函数,实现杨辉三角前n行的生成。在该函数中,我们使用了二维数组来存储每一行的元素,然后依次计算出每一行的数值,并存储到对应的数组中。具体实现过程如下:


void PrintYanghuiTriangle(int n)

{

  int a[100][100];

  for (int i = 0; i < n; i++)

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

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

        a[i][j] = 1;

      else

        a[i][j] = a[i - 1][j - 1] + a[i - 1][j];

  for (int i = 0; i < n; i++)

  {

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

      cout << setw(4) << a[i][j];

    cout << endl;

  }

}

在以上函数中,我们首先定义了一个二维数组a,并在循环中依次计算出每一行的数值。它的计算方法很简单,就是根据杨辉三角的性质,将每一行的元素都计算出来。

接下来,我们使用了两个for循环,将计算出的每一行数值打印出来。因为每一行的长度都不相同,所以我们需要使用setw函数来控制输出的宽度,使每一个数字都能对齐。

最后,在主函数中,我们调用该函数,生成前n行的杨辉三角。例如,我们可以输入n=5,得到如下的输出结果:


  1

  1  1

  1  2  1

  1  3  3  1

  1  4  6  4  1

通过以上实验,我们不仅了解了杨辉三角的性质和生成方法,还掌握了使用C++语言实现计算杨辉三角的算法。这对于我们进一步学习数学和编程都具有很大的意义。

  
  

评论区

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