1
333
55555
7777777
999999999
程序打印数字金字塔。我想用Java打印此模式。
我的代码:
private static void pyramid() {
System.out.println("Please Enter any number less than 10 : ");
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
int temp = num;
for (int row = 0; row <= num; row++) {
for (int column = 0; column < temp; column++) {
System.out.print(" ");
}
temp--;
for (int k = 0; k <= row-1; k++) {
if (row % 2 != 0) {
System.out.print(row);
}
System.out.println();
}
}
}
我得到以下输出:
Please Enter any number less than 10 :
9
1
3
3
3
5
5
5
5
5
7
7
7
7
7
7
7
9
9
9
9
9
9
9
9
9
答案 0 :(得分:2)
System.out.println(" 1");
System.out.println(" 333");
System.out.println(" 55555");
System.out.println(" 7777777");
System.out.println("999999999");
您的老师可能希望您使用循环。
因此,您应该注意,程序员可以闭上眼睛就可以看到的循环标准:
for (int i = 0; i < someNumber; i++) {
//..
}
是相当可配置的。例如,最后的i ++表示要递增i,但是我们可以递增更大的值(或递减,或者做一些其他时髦的事情,如单步执行对象列表等等)。
例如
i += 3;
将i增加三。
您还可以将循环嵌套在另一个内部,例如
for (int i = 1; i < 10; i+=2) {
String s = "";
for (int j = 0; j < i; j++) {
s += i;
}
System.out.println(s);
}
我把前面的填充留给读者练习。
请注意,这种模式(一个循环在另一个循环内,而内部循环受外部循环计数器限制)实际上很常见,“在野外”,因此值得花时间来理解。