直角形状的杨辉三角形效果图
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
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
规律如下:
第n行有n个数字.
每一行的开始和结尾数字都为1.
用二维数组表示就是a[i][0]=1; a[i][j]=1(当i==j时);
第n+1行的第i个数字等于第n行的i-1个数字加上第n行的i个数字。
用二维数组表示就是 a[i+1][j]=a[i][j-1]+a[i][j];
代码如下:
public class YangHui {
public static void main(String [] args){
//1.创建二维数组
int [][] yanghui = new int[10][];
//2.使用循环结构,初始化外层数组元素
for(int i=0;i<yanghui.length;i++){
yanghui[i]=new int[i+1];
//3.给数组首末元素赋值为1
yanghui[i][0]=1;
yanghui[i][i]=1;
//4.给数组非首末元素赋值
for(int j=1;j<yanghui[i].length-1;j++){
yanghui[i][j]=yanghui[i-1][j]+yanghui[i-1][j-1];
}
}
//遍历二维数组
for(int i=0;i< yanghui.length;i++){
for(int j=0;j<yanghui[i].length;j++){
System.out.print(yanghui[i][j]+"\t");
}
System.out.println();
}
}
}