Java程式列印帕斯卡三角形


在這篇文章中,我們將學習如何在Java中列印帕斯卡三角形。帕斯卡三角形是教授工程專業的學生的一個經典例子。它有很多解釋。其中一個著名的解釋是它與二項式方程式的關係。

三角形外部的所有值都被認為是零 (0)。第一行是 0 1 0,而帕斯卡三角形中只有 1 佔據一個位置,0 是不可見的。第二行是透過相加 (0+1) 和 (1+0) 得到的。結果位於兩個零之間。這個過程持續到達到所需的級別。

問題陳述

編寫一個Java程式來列印帕斯卡三角形。

輸入

 n=4

輸出

列印帕斯卡三角形的步驟

以下是列印帕斯卡三角形的步驟:

  • 輸入要列印的行數 n。
  • 使用for迴圈進行 n 次外迴圈迭代以列印行。
  • 進行內部迭代 j 到 (n - 1)。
  • 列印單個空格 " " 並關閉內迴圈。
  • 進行內部迭代 j 到 i。
  • 列印 i 和 j 的nCr,然後關閉內迴圈。
  • 每次內迴圈迭代後列印換行符。

Java程式列印帕斯卡三角形

以下是列印帕斯卡三角形的Java程式:

public class PascalsTriangle {
    static int factorial(int n) {
        int f;
        for(f = 1; n > 1; n--) {
            f *= n;
        }
        return f;
    }
    static int ncr(int n,int r) {
        return factorial(n) / ( factorial(n-r) * factorial(r) );
    }
    public static void main(String args[]) {
        System.out.println();
        int n, i, j;
        n = 5;

        for(i = 0; i <= n; i++) {
            for(j = 0; j <= n-i; j++) {
                System.out.print(" ");
            }
            for(j = 0; j <= i; j++) {
                System.out.print(" "+ncr(i, j));
            }
            System.out.println();
        }
    }
}

輸出

             1
          1     1
        1    2    1
      1    3   3     1
   1    4    6    4    1
1   5   10     10    5    1   

程式碼解釋

這個Java程式列印帕斯卡三角形,其中每個數字都是其上方兩個數字的和。它首先定義一個factorial() 方法來計算一個數的階乘。然後,ncr 方法使用它來計算三角形的組合。
main() 方法中,行數設定為 5,並初始化ij進行迭代。外迴圈遍歷每一行。在這個迴圈內,列印空格以進行格式化,然後使用ncr 方法列印三角形的值。每行之後,程式移到下一行。

更新於:2024年9月16日

9K+ 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告