Java基礎——列印楊輝三角

xiaoxaoyu發表於2020-10-07

問題:列印出一個10行的楊輝三角形
知識點:二維陣列
思路:先分析楊輝三角形的規律:1.n行的元素數量是n;2.每行的收尾都是1;3.從第三行開始,每一非首末的數字都滿足:yangHui[i][j]=yangHui[i-1][j-1]+yangHui[i-1][j]。程式碼如下:

//        1.宣告初始化二維陣列
        int[][] yangHui = new int[10][];
//        2.給陣列的元素賦值
        for (int i = 0; i < yangHui.length; i++) {
            yangHui[i] = new int[i+1];
//            2.1 給首末元素賦值
            yangHui[i][0] = 1;
            yangHui[i][i] = 1;
//            2.2 給每行的非首末元素賦值
            if (i>1){
                for (int j = 1; j <yangHui[i].length-1 ; j++) {
                    yangHui[i][j]=yangHui[i-1][j-1]+yangHui[i-1][j];
                }
            }
        }
        
//        3.遍歷二維陣列
        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();
        }

輸出結果如下:
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

相關文章