Klu*_*hxv 0 java if-statement while-loop
System.out.println("Enter number of dice to throw, an integer [2, 10]: ");
Scanner keyboard = new Scanner (System.in);
n = keyboard.nextInt();
//if the input is valid
if (n>1 && n<11)
{`
System.out.println("good");
Random rn = new Random();
int random = rn.nextInt((6-1) +1) +1;
System.out.println("random number is " + random);
}
else
{
//if the users input is invalid
while (n<2 && n>10)
{
System.out.println("error, must be in [2,10] ");
n = keyboard.nextInt();
}
}
Run Code Online (Sandbox Code Playgroud)
你的逻辑不正确.这个数字n不能少于2 和大于10以往.你希望小于2 或大于10.用||而不是&&.
while (n<2 || n>10)
Run Code Online (Sandbox Code Playgroud)