Java输出杨辉三角

杨辉三角

二项式系数在三角形中的一种几何排列。在欧洲,这个表叫做帕斯卡三角形。帕斯卡(1623----1662)是在1654年发现这一规律的,比杨辉要迟393年,比贾宪迟600年。杨辉三角是中国古代数学的杰出研究成果之一,它把二项式系数图形化,把组合数内在的一些代数性质直观地从图形中体现出来,是一种离散型的数与形的结合。

输出十行杨辉三角方法一

public class YangHui {
    public static void main(String[] args) {
        int [][]YangHui = new int[10][];
        for (int i = 0; i < YangHui.length; i++) {
            YangHui[i] = new int[i+1];//给每一个一维数组开空间
            for (int j = 0; j < YangHui[i].length; j++) {
                if(j==0||j== YangHui[i].length-1){
                    YangHui[i][j] = 1;//每一行的第一个元素和最后一个的元素都是1
                } else {//中间元素
                    YangHui[i][j] = YangHui[i-1][j] + YangHui[i - 1][j - 1];
                }
            }
        }
        for (int i = 0;i

输出结果

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	

方法二

public class YH {
    public static void main(String[] args) {
        int row = 10;
        int[][] a=new int [row][2*row+1];
        a[0][row]=1;//第一行中间为1
        //从第二行开始赋值
        for (int i = 1; i < a.length; i++) {
            for (int j = 1; j < a[i].length-1; j++) {
                a[i][j]=a[i-1][j-1]+a[i-1][j+1];
            }

        }
        for (int i = 0; i < a.length; i++) {
            for (int j = 1; j < a[i].length-1; j++) {
                if (a[i][j]==0) System.out.print("\t");//若元素为0不打印."\t"制表符打印美观
                else System.out.print(a[i][j]+"\t");
            }
            System.out.println();
        }
    }

 }

输出结果

									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	

你可能感兴趣的:(java)