Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Consider this Java code snippet that uses a “while” loop. The intent of the prog

ID: 3773932 • Letter: C

Question

Consider this Java code snippet that uses a “while” loop. The intent of the program is to ask the user to enter 10 numbers and only 10 numbers.

public static void main(String[] args) { Scanner input = new Scanner(System.in);

int numbersEntered = 0;

int number; while (numbersEntered < 10){

System.out.println("Please enter a number");

number = input.nextInt();

System.out.print("You have entered a total of " + numbersEntered + " ");

}

}

Questions: What is wrong with the code and how would you fix it?

How would you test your fix to verify that you fixed the problem(s)?

Could you rewrite this using another loop structure and if so how?

Explanation / Answer

Hi,

I have fixed the issue and highlighted the code changes below.


import java.util.Scanner;

public class Test {
   public static void main(String[] args) { Scanner input = new Scanner(System.in);
   int numbersEntered = 0;
   int number;
   while (numbersEntered < 10){
   System.out.println("Please enter a number");
   number = input.nextInt();
   numbersEntered++;
   }
   System.out.print("You have entered a total of " + numbersEntered + " ");

  
   }
}

Using another loop with same program: Using for loop


import java.util.Scanner;

public class Test {
   public static void main(String[] args) { Scanner input = new Scanner(System.in);
   int numbersEntered = 0;
   int number;
   for(numbersEntered=0; numbersEntered < 10; numbersEntered++){
   System.out.println("Please enter a number");
   number = input.nextInt();
   }
   System.out.print("You have entered a total of " + numbersEntered + " ");
  
   }
}

Output:

Please enter a number
1
Please enter a number
2
Please enter a number
3
Please enter a number
4
Please enter a number
5
Please enter a number
6
Please enter a number
7
Please enter a number
8
Please enter a number
9
Please enter a number
10
You have entered a total of 10