杨辉三角,是二项式系数在三角形中的一种几何排列,中国南宋数学家杨辉1261年所著的《详解九章算法》一书中出现。在欧洲,帕斯卡(1623 ~ 1662)在1654年发现这一规律,所以这个表又叫做帕斯卡三角形。帕斯卡的发现比杨辉要迟393年,比贾宪迟600年。
- 编程实现
思路:用二维数组来保存杨辉三角形的元素
KaTeX parse error: Undefined control sequence: \stop at position 62: …1&4 &6 &4 &1\\ \̲s̲t̲o̲p̲{matrix}
边界:a[i][0]=1,a[i][i]=1,i∈[0,n−1]a[i][0] = 1, a[i][i] =1, i\in[0, n-1]a[i][0]=1,a[i][i]=1,i∈[0,n−1]
内部:a[i][j]=a[i−1][j−1]+a[i−1][j],i∈[2,n],j∈[1,i−1]a[i][j]=a[i-1][j-1]+a[i-1]
2.查看结果
3.显示为等腰三角形
4.打字机程序
5. 源代码
package net.nieyourong.p02.t08;
/**
* 功能:打印杨辉三角形
* 作者:聂友蓉
* 日期:2022年04月21日
*/
public class Task08打字机效果 {
public static void main(String[] args) {
//声明部分(三角形二维数组)
int[][] a = new int[15][];
// 每行元素个数跟行数一致
for (int i = 0; i < a.length; i++) {
a[i] = new int[i + 1];
}
//边界赋值
for (int i = 0; i < a.length; i++) {
a[i][0] = 1;//左边界
a[i][i] = 1;//右边界
}
//内部元素采用递推公式计算
for (int i = 2; i < a.length; i++) {
for (int j = 1; j < i; j++) {
a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
}
}
//输出杨辉三角形
for (int i = 0; i < a.length; i++) {
for (int j = 1;j < 43 - 3 * i; j++) {
System.out.print(" ");
}
for (int j = 0; j <= i; j++) {
System.out.print(String.format("%-5d",a[i][j]));
for(long k = 1;k < 20_2000_0000L;k++);
}
System.out.println();
}
}
}