netbeans java上的重复数字序列

jc3wubiy  于 2022-11-10  发布在  Java
关注(0)|答案(2)|浏览(154)

所以最近有一个考试,使这个简单的程序上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;
    }

先谢谢你!

iqxoj9l9

iqxoj9l91#

我觉得这样做效率很低,但这是我的想法:
你需要使用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(" ");
}
zhte4eai

zhte4eai2#

对于这种情况,我宁愿使用1 for循环,使用String.repeat格式化字符串

for (int i =0; i <= N; i++)
    System.out.print(String.format("%s%s ","0".repeat(i),"1".repeat(i)));

相关问题