我目前正在开发一个应该产生所需输出的程序:
1
2 2
3 3 3
4 4 4 4
5 5 5 5 5
etc
基本上,它将是一个类函数,它接受一个int,并从1开始,多次打印数字n。
这是我到目前为止所拥有的:
import java.util.*;
public class NumberTaker {
public static void calculateNum(int a ){
int b = 0;
int c = b;
int numTimes = a;
for (int i = 1; i < numTimes; i++) {
for (int j = 1; j < numTimes; j++) {
if (i == j) {
System.out.println(i);
}
}
}
}
}
当然这只会打印每个数字一次,我不知道如何打印每个数字n次。谁能给我任何建议?
试试这个
for (int i = 1; i <= numTimes; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(i + " ");
}
System.out.println();
}
外环从1..numTimes
循环。内循环从1...i
次循环,因此您可以打印i
i
次的值。
这不会导致程序中的错误,而只是一个注释:您正在声明并初始化变量b和c但是您没有在循环中的任何位置使用它们,因此它们只是浪费了不必要的空间。实际上,您甚至不需要变量numTimes。只需使用您的参数a。
话虽这么说,你所犯的错误就在于条款。您希望打印每个i值j次,但是当i等于j时,您的代码仅打印到控制台。因此,这就是为什么它只打印每个值一次(1 2 3 4)而不是你想要的。
如果您有任何疑问,请尝试以下代码并告诉我们。祝好运!
public static void calculateNum(int a ){
for (int i = 1; i <= a; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(i + " ");
}
System.out.println(" ");
}
}