Java 是否允许循环打印连续数字?

Java 是否允许循环打印连续数字?,java,for-loop,Java,For Loop,我应该构建一个代码,要求输入用户名,要求输入一个介于1和10之间的数字,直到我得到该范围内的数字,然后打印从1到用户输入的数字,除了每三个数字应该是在程序开始时输入的用户名。例如,如果数字为4,名称为Tom,则输出将为: 1 2 Tom 4 我正在努力想办法做第三部分。我更喜欢使用for循环。有人能解释一下我是怎么做到的吗? 这是我到目前为止所拥有的(很少的) import java.util.Scanner; /** * * @author Home */ publi

我应该构建一个代码,要求输入用户名,要求输入一个介于1和10之间的数字,直到我得到该范围内的数字,然后打印从1到用户输入的数字,除了每三个数字应该是在程序开始时输入的用户名。例如,如果数字为4,名称为Tom,则输出将为:

  1
  2
  Tom
  4
我正在努力想办法做第三部分。我更喜欢使用for循环。有人能解释一下我是怎么做到的吗? 这是我到目前为止所拥有的(很少的)

import java.util.Scanner;

/**
 *
 * @author Home
 */
public class NewClass {
    public static void main(String[] args) {
        Scanner scan = new Scanner( System.in);

        System.out.print( "Enter your name: ");
        String name = scan.nextLine();

        System.out.print( "Please enter a number between 1 and 10: ");
        number = scan.nextInt();

        while ( number >= 1 && number <= 10)
import java.util.Scanner;
/**
*
*@作者之家
*/
公共类新类{
公共静态void main(字符串[]args){
扫描仪扫描=新扫描仪(System.in);
System.out.print(“输入您的姓名:”);
字符串名称=scan.nextLine();
System.out.print(“请输入一个介于1和10之间的数字:”);
number=scan.nextInt();

虽然(number>=1&&number这不难用模运算符
%
和for循环实现。符号
%
基本上给出除法的剩余部分。因此,例如
12%3
为0,
13%3
为1

for(int i = 1; i < number ; i++ ){
  if(i%3 == 0) // This is the modulus operator, it gives the remainder
  {
     System.out.print(name);
  } else {
     System.out.print(i);
  }
}
for(int i=1;i
要检查输入值是否大于10,可以在此之前使用if-else语句。或者可以将输入值包装成循环,直到用户给出正确答案:

while (number < 1 || number > 10) {
    System.out.print( "Only accept numbers between 1-10");
    number = scan.nextInt();
}
while(数字<1 | |数字>10){
系统输出打印(“仅接受1-10之间的数字”);
number=scan.nextInt();
}
尽管这会导致无限循环。您可能需要给用户有限的尝试次数。

Scanner scan=new Scanner(System.in);
    Scanner scan = new Scanner( System.in);

    System.out.print( "Enter your name: ");
    String name = scan.nextLine();

    System.out.print( "Please enter a number between 1 and 10: ");
    int number = scan.nextInt();

    while (number < 1 || number > 10) {
        System.out.print( "Please enter a number between 1 and 10: ");
        number = scan.nextInt();
    }

    for (int i = 1; i <= number; i++) {
        if (i % 3 == 0) {
            System.out.print(name + " ");
        } else {
            System.out.print(i + " ");
        }
    }
System.out.print(“输入您的姓名:”); 字符串名称=scan.nextLine(); System.out.print(“请输入一个介于1和10之间的数字:”); int number=scan.nextInt(); 而(数字<1 | |数字>10){ System.out.print(“请输入一个介于1和10之间的数字:”); number=scan.nextInt(); } 对于(inti=1;i试试这个

Scanner scan = new Scanner( System.in);
System.out.print( "Enter your name: ");
String name = scan.nextLine();

System.out.print( "Please enter a number between 1 and 10: ");
int number = scan.nextInt();

//asks for a number between one and ten until I get number within that range,
while (number < 1 || number > 10) {
    System.out.print( "No, between 1 and 10: ");
    number = scan.nextInt();
}


for (int i = 1; i <= number; i++) {
    if (i % 3 == 0) {
        System.out.print(name + " ");
    } else {
        System.out.print(i + " ");
    }
}

要求一个介于1和10之间的数字,直到我得到该范围内的数字,-需要一个loop@ScaryWombat你没有在代码中看到for循环吗?@stophen不确定你的注释指向哪里。当我发表评论时,没有循环编码,而是无限循环
Enter your name: Tom
Please enter a number between 1 and 10: 21
No, between 1 and 10: 7
1 2 Tom 4 5 Tom 7