【Java练习】杨辉三角

78 阅读1分钟

1. 要求效果

1 1 1 1 2 1 1 3 3 1 1 4 6 4 1

输出10行杨辉三角

2. 需求分析

  1. 使用二维数组实现
  2. 每一行的首位数字都是一
  3. 每一行都比上一行多一个数字
  4. 每行除了首位和末尾的数字,中间的数字是 上一行 当前列和前一列 的和

3. 代码实现

public class YangHui {
    public static void main(String[] args){
        int[][] arry = new int[10][];
        for(int i = 0; i < arry.length; i++){
            arry[i] = new int[i + 1];
            for(int j = 0; j < arry[i].length; j++){
                if(j == 0 || j == arry[i].length - 1){
                    arry[i][j] = 1;
                }else{
                    arry[i][j] = arry[i - 1][j] + arry[i - 1][j - 1];
                }
            }
        }
        for(int i = 0; i < arry.length; i++){
            for(int j = 0; j < arry[i].length; j++){
                System.out.print(arry[i][j] + " ");
            }
            System.out.println();
        }
    }
}