📅  最后修改于: 2023-12-03 15:39:41.705000             🧑  作者: Mango
本文介绍如何打印星帕斯卡三角形的Java程序。星帕斯卡三角形是在普通的帕斯卡三角形上加入“*”字符的一种形式,它的规律如下:
第一行只有一个“1”字符。
从第二行开始,每行的开头和结尾都是“1”,中间的数字是上一行相邻两个数字之和,并在每个数字之间加上一个“*”。
每一行的数字个数与行数相同。
每一行中数字之间的“*”数量等于该行行号减1。
下面是打印星帕斯卡三角形的Java程序:
public class PrintStarPascalTriangle {
public static void print(int rows) {
for (int i = 0; i < rows; i++) {
int number = 1;
StringBuilder sb = new StringBuilder();
for (int j = 1; j <= rows - i; j++) {
sb.append(" ");
}
for (int j = 0; j <= i; j++) {
sb.append(number).append(" ");
number = number * (i - j) / (j + 1);
}
for (int j = 0; j < i; j++) {
sb.append("*");
}
System.out.println(sb.toString());
}
}
public static void main(String[] args) {
int rows = 5;
print(rows);
}
}
代码解释:
首先通过一个循环语句来遍历每一行。
然后在每一行之前添加一些空格,以使得星帕斯卡三角形居中显示。
在每一行中使用组合公式来计算三角形中的数字,并且在数字之间插入“*”字符。
最后输出每一行的字符串。
结果:
1
1 * 1
1 * 2 * 1
1 * 3 * 3 * 1
1 * 4 * 6 * 4 * 1
以上就是打印星帕斯卡三角形的Java程序。大家可以将其复制到Java IDE中进行尝试,并对其进行调整以适应不同的行数。