gpt4 book ai didi

Java数字模式两个三角形并排制作正方形/矩形

转载 作者:行者123 更新时间:2023-11-30 06:40:25 34 4
gpt4 key购买 nike

我希望输出看起来像这样:

如何安排这些循环以获得两个三角形数字模式?我该如何改进我的代码。 JAVA 中的新功能:-)

    for (int i = 1; i<=10; i++ ) {
for (int j = 1; j <= i; j++) {
System.out.print(j);
}
System.out.println();
}
for (int count = 1; count <= 10; count++) {
for (int index=1; index < count+1; index++)
System.out.print(" ");

for (int num=10; num >count; num--) {
System.out.print(num);
}
System.out.println();
}

最佳答案

这样的事情怎么样?

for (int row = 1; row <= 10; row++) {
for (int j = 1; j <= row; j++) {
System.out.print(j + " ");
}
System.out.print(" ");
for (int j = 10; j >= row; j--) {
System.out.print(j + " ");
}
System.out.println();
}

输出:

1   10 9 8 7 6 5 4 3 2 1 
1 2 10 9 8 7 6 5 4 3 2
1 2 3 10 9 8 7 6 5 4 3
1 2 3 4 10 9 8 7 6 5 4
1 2 3 4 5 10 9 8 7 6 5
1 2 3 4 5 6 10 9 8 7 6
1 2 3 4 5 6 7 10 9 8 7
1 2 3 4 5 6 7 8 10 9 8
1 2 3 4 5 6 7 8 9 10 9
1 2 3 4 5 6 7 8 9 10 10

说明 - 外部循环遍历行,因此为了清楚起见,我将 i 重命名为 row。第一个内部循环与您的代码没有变化——它负责打印对角线之前的数字。然后我们打印一个双空格 (System.out.print("")),然后第二个循环打印其余数字,从 10 开始一直到行号。

另一方面,您应该更好地格式化代码。缩进确实有助于提高可读性和理解力。

例如,您的第一个循环如下所示:

  for(int i = 1; i<=10; i++ ) {
for(int j = 1; j <= i; j++) {
System.out.print(j);
}
System.out.println();
}

但应该是这样的:

for (int i = 1; i <= 10; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(j);
}
System.out.println();
}

这是相同的代码,但在格式化版本中更容易看到第二个 System.out.println 语句跟在内部 for 之后,最后的关闭语句括号关闭外部 for 循环而不是其他东西。

关于Java数字模式两个三角形并排制作正方形/矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58142311/

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