Java之杨辉三角问题

2023-03-16T23:32:00

打印下列所示的杨辉三角
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1

代码

package com.fc.Pro_three;

public class Six {
    public static void main(String[] args) {
        int[][] arr= new int[6][6];
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0;j<arr[i].length;j++){
//              arr[i][j].length=i;
                //这里是把首尾先变成1
                arr[i][0]=1;
                arr[i][i]=1;
                //利用矩阵可知道i>j就是左下角,再加上非1判断
                if (arr[i][j]!=1&&i>j){
                    //System.out.println(i+" "+j);
                    //这里就是杨辉三角的规律,非1的数=它上边的数加上上边的左边那个数
                    arr[i][j] = arr[i-1][j]+arr[i-1][j-1];
                }
               //arr[i][arr.length-j-1]=0;
            }
        }
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0;j<arr[i].length;j++){
               //这里是i>=j因为要把对角线的1也给输出
                if (i>=j){
                    System.out.print(arr[i][j]+"\t");
                }
            }
            System.out.println();
        }
    }
}

运行结果图


具体的内容我就不在讲了,已经在注释中表明,注意包名类名文件名的更改即可

当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »