Java程序打印帕斯卡三角形


在这篇文章中,我们将学习如何在Java中打印帕斯卡三角形。帕斯卡三角形是教授工程专业的经典例子之一。它有很多解释。其中一个著名的应用是与二项式方程一起使用。

三角形外部的所有值都被视为零 (0)。第一行是 0 1 0,而只有 1 占据帕斯卡三角形中的一个位置,0 是不可见的。第二行是通过将 (0+1) 和 (1+0) 相加得到的。输出夹在两个零之间。这个过程持续到达到所需的级别。

问题陈述

编写一个 Java 程序来打印帕斯卡三角形。

输入

 n=4

输出

打印帕斯卡三角形的步骤

以下是打印帕斯卡三角形的步骤:

  • 获取要打印的行数 n。
  • 使用for循环,进行 n 次外部迭代 i 来打印行。
  • 进行内部迭代 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+ 浏览量

开启你的职业生涯

通过完成课程获得认证

开始学习
广告