杨辉三角形,又称贾宪三角形,帕斯卡三角形,是二项式系数在三角形中的一种几何排列。据说是出现在南宋时期杭州人杨辉的《详解九章算法》一书中。二项式定理与杨辉三角形是一对天然的数形趣遇,它把带进了。求二项式展开式系数的问题,实际上是一种组合数的计算问题。用系数来计算,称为“式算”;用杨辉三角形来计算,称作“图算”。而我们计算机可以很好的利用杨辉三角的性质,通过编程语言来实现输出这个三角形。将数学与见算计也完美的结合起来。下面我用两种做法来实现杨辉三角形直角三角的输出。

第一种:先逐个输出每个位置上的元素,再利用循环遍历的方法得到整个三角形。

看代码:

private static int GetTriangle(int line, int row){    if (row == 1 || line == row)//如果列数位1,或者行等于列,输出值为1    {        return 1;    }    else//否则输出它头顶的数和头顶数前一列(同一行)的数和    {        return GetTriangle(line - 1, row - 1) + GetTriangle(line - 1, row);    }}

这是方法部分。调用部分如下:

for (int line = 1; line < 10; line++){    for (int row = 1; row < line + 1; row++)    {        GetTriangle(line, row);//得到第line行第row列位置上的元素        Console.Write("  ");        Console.Write(GetTriangle(line, row)); //输出第line行第row列位置上的元素    }    Console.WriteLine();//第line行输完后换行}

第二种:直接利用循环就能输出的。

看代码:

//准备一个10行10列的二维数组来存放相应位置上输出的数           int[ ,] ary = new int[10, 10];           for (int i = 0; i < 10; i++)//其中i表示行的索引           {               for (int j = 0; j < i + 1; j++)//其中j表示列的索引               {                   //其中第0列或者行列的索引的值相等的位置输出值都为1                   if (j == 0 || i == j)                   {                       ary[i, j] = 1;                       Console.Write(ary[i, j]);//向屏幕输出值                       Console.Write("\t");                   }                   else                   {//否则输出结果为它头顶上的数加上与头顶数同行的前一位                       ary[i, j] = ary[i - 1, j - 1] + ary[i - 1, j];                       //输出要求的数                       Console.Write(ary[i, j]);                       //在目前输出的数后加入空格(主要是用来美化最后输出的结果)                       Console.Write("\t");                   }               }               //每一行输出完成后换行               Console.WriteLine();           }

运行结果如下:

杨辉三角在数学里关于求多项式洗漱的作用非常大,现在用计算机实现了,非常好的结合了数学与计算机!

                   加油,Ajax的姑娘!