所以最近a进行了一次考试,在java:上制作这个简单的程序
你输入一个数字,然后程序需要根据你输入的金额重复一个序列,如下所示:如果是数字3,它应该显示01-0011-000111,因为你可以看到数字在同一行中重复,如果是数字5,它应该会显示:01-0011-000111-00001111-0000011111,没有"-"符号,我只是想让你更好地理解它。我唯一能做的就是:
Scanner lea = new Scanner(System.in);
int number;
int counter = 1;
System.out.println("Enter a number");
number = lea.nextInt();
while(counter<=number){
System.out.print("0");System.out.print("1");
counter = counter + 1;
}
提前感谢!
我觉得这是低效的,但这是我的想法:
你需要使用1个循环,其中有2个额外的循环。外部循环将迭代N次(用户指定的数量(,内部的2个循环将迭代外部循环的当前迭代次数。其中一个用于打印0,另一个用于打印机1。
在代码中,它看起来是这样的:
for(int i = 0; i < N; i++){
for(int j = 0; j <= i; j++){
System.out.print(0);
}
for(int j = 0; j <= i; j++){
System.out.print(1);
}
if(i + 1 != N) System.out.print(" ");
}
在这种情况下,我宁愿使用1作为循环,并使用string.repeak 格式化字符串
for (int i =0; i <= N; i++)
System.out.print(String.format("%s%s ","0".repeat(i),"1".repeat(i)));