Hi,
I have written a program that accepts a positive integer as input and determines whether or not the number is prime, it all works accept when a number is prime it should display " x is a prime number " and continue to prompt for user input ( loop ) but it will only display " please enter a number"
Could you have a look at my code and see what I am missing or what I have done wrong please?
Thank you!
Here is the code:
import java.io.*;
public class PrimalityTest
{
public static void main(String[] args)throws IOException{
// create a keyboard input stream
BufferedReader stdin = new BufferedReader (new
InputStreamReader(System.in));
// variables to store input
int Input;
do
{
// prompt for user input
System.out.print("Please enter a number: ");
Input = Integer.parseInt(stdin.readLine());
// test for prime number
for (int i = 2; i < Input; i++)
if ((Input % i) == 0)
{
System.out.println(Input + " is not a prime number");
return;
}
else
System.out.println(Input + " is a prime number");
// if number is 0 then exit
if (Input == 0)
{
System.out.println("Exiting program...");
}
else
// if number is negative
if (Input <= -1)
{
System.out.println("Please enter a positive integer.");
}
}
while (Input !=0);
}
}