【发布时间】:2014-06-11 06:55:35
【问题描述】:
只是为了玩,我尝试编写一个程序,这样我就可以使用 for 循环制作一个锐角三角形,所以我的输出将是这样的:
0
1 1
2 2 2
3 3 3 3
4 4 4 4 4
5 5 5 5 5 5
6 6 6 6 6 6 6
7 7 7 7 7 7 7 7
8 8 8 8 8 8 8 8 8
9 9 9 9 9 9 9 9 9 9
但是当我想要超过 10 个时,我的锐角三角形会变得像这样:
0
1 1
2 2 2
3 3 3 3
4 4 4 4 4
5 5 5 5 5 5
6 6 6 6 6 6 6
7 7 7 7 7 7 7 7
8 8 8 8 8 8 8 8 8
9 9 9 9 9 9 9 9 9 9
10 10 10 10 10 10 10 10 10 10 10
12 12 12 12 12 12 12 12 12 12 12 12 12
我的代码如下
public class Triangel {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
for (int i = 20; i > 0; i--) {
for (int j = i - 1; j > 0; j--) {
System.out.print(" ");
}
for (int k = 20; k > i - 1; k--) {
if (i =< 9) {
System.out.print(" " + (20 - i));
} else if (i > 9) {
System.out.print( " "+(20 - i));
}
}
System.out.println();
}
}
}
当我想在 9 点之后打印时,知道如何使它成为完美的锐角三角形吗?
注意:我认为 if 语句会有所帮助,但似乎没有。
【问题讨论】:
-
这个你真的应该可以自己考虑。
-
创造差异的只是印刷方式。您可以放置更多空格字符,使其看起来像一个锐角三角形。
-
屏幕中的每个数字都被限制在特定数量的像素内。当您想要一个大于 9 的数字时,意味着您使用的是 2 位数字,那么这个协议就被打破了,所以输出中没有对称性。那么你的预期是什么?
-
@Eypros 你看到我的 if 语句部分了吗?