gpt4 book ai didi

java - 帕斯卡三角形的格式

转载 作者:行者123 更新时间:2023-12-02 09:54:39 28 4
gpt4 key购买 nike

我必须打印帕斯卡三角形,所以它每边应该有数字1,并且三角形的格式每边应该是偶数(现在它在右侧更长)。我的代码:

public static void main(String[] args) {
printPascalTriangle(10);
}

public static void printPascalTriangle(int size) {
for (int i = 0; i <= size; i++) {
System.out.println();
for (int j = 0; j <= (size - i); j++) {
System.out.print(" ");
}
for (int j = 0; j <= i; j++) {
System.out.print(" " + (i + j));
}
}
}

输出是:

            0
1 2
2 3 4
3 4 5 6
4 5 6 7 8
5 6 7 8 9 10
6 7 8 9 10 11 12
7 8 9 10 11 12 13 14
8 9 10 11 12 13 14 15 16
9 10 11 12 13 14 15 16 17 18
10 11 12 13 14 15 16 17 18 19 20

为什么没有总结?为什么循环不能正确格式化空格?

最佳答案

您应该使用 printf 方法而不是 print 并带有适当的参数来格式化输出:

public static void main(String[] args) {
printPascalTriangle(10);
}

public static void printPascalTriangle(int rows) {
for (int i = 0; i < rows; i++) {
int number = 1;
System.out.printf("%" + (rows - i) * 2 + "s", "");
for (int j = 0; j <= i; j++) {
System.out.printf("%4d", number);
number = number * (i - j) / (j + 1);
}
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

关于java - 帕斯卡三角形的格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56088565/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com