我无法弄清楚如何使用嵌套循环先向上计数,然后向下计数。目前,我的输出是:
2
33
444
5555
66666
当我希望它像这样输出时:
2
33
444
33
2
我不知道如何解决这个问题。我一直在研究这个问题,但似乎不知道如何改变事情以使其发挥作用。
这是我当前产生第一个输出的代码:
最佳答案
此输出有两个有趣的属性。对于每一行 i
我们可以这样说:
- 每行的字符数为
i
和time - i
之间的最小值。 - 要打印的字符是该行中的字符数 + 1。
如果你把它们放在一起:
int lines = 3;
int times = lines * 2;
String output = "";
for(int i = 1; i < times; i++)
{
int numChar = Math.min(i, times - i);
int toPrint = numChar + 1;
for(int k = 1; k < toPrint; k++) {
output += toPrint;
}
output += "\n";
}
System.out.println(output);
关于java - 如何使用嵌套循环先向上再向下计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53856472/