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,并初始化i和j进行迭代。外循环遍历每一行。在这个循环内,打印空格以进行格式化,然后使用ncr 方法打印三角形的值。每行之后,程序移到下一行。
广告