有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在java中,如何使while循环运行直到多次满足条件?

我试图制作一个程序,用户可以输入目标以及他想要达到目标的次数。问题是我不知道如何使while循环运行多次(多次满足条件)

Scanner target = new Scanner(System.in);
System.out.println("Enter dice target (1-10):");
int targetNumber = target.nextInt(); 

Scanner required = new Scanner(System.in);
System.out.println("Enter the number of required matches: ");
int requiredMatches = target.nextInt();

int number = (int) (1 + 10 * Math.random());
int sum = 1;
if (targetNumber > 10) { 
    System.out.println("Error"); 
}
else {
    while (number != targetNumber) { 
        System.out.println("Your number is " + number);
        number = (int) (1 + 10 * Math.random());
        ++sum;
    }
    System.out.println("You reached your target " + requiredMatches + " times in " + sum + " tries.");
}

代码只允许我匹配目标一次,但我希望它能够在停止之前获得目标值[RequiredMatches]次


共 (1) 个答案

  1. # 1 楼答案

    如果数字匹配,则将尝试次数减少1

    Scanner Required = new Scanner(System.in);
    System.out.println("Enter the number of required matches: ");
    int RequiredMatches = Target.nextInt();
    
    int Number = (int) (1 + 10 * Math.random());
    int sum = 1;
    if (NumberTarget > 10) { 
      System.out.println("Error"); 
    } else {
        while ((Number != NumberTarget) || (RequiredMatches > 0)) { 
            System.out.println("Your number is " + Number);
            Number = (int) (1 + 10 * Math.random());
            ++sum;
            if (Number==NumberTarget) {
                RequiredMatches ;
            }
            System.out.println("You reached your target " + RequiredMatches + " times in " + sum + " tries.");
        }
    }