Программа просто должна взять пользовательский ввод и сказать, является ли он простым или нет, тогда он должен спросить их, хотят ли они сделать это снова, пока они этого не захотят.
Вот что я до сих пор:Программа Prime #, идентифицирующая ложные простые числа
import java.util.*;
public class PrimeOrNot
{
public static void main (String[] args)
{
Scanner scan = new Scanner (System.in);
int n = 0;
String reply;
char doAgain = 'Y';
boolean valid = false, isPrime = true;
Welcome();
do
{
System.out.print("Enter a whole number: ");
n = scan.nextInt();
if(PrimeTest(n))
System.out.println(n + " is a prime number!");
if(!PrimeTest(n))
System.out.println(n + " is not a prime number!");
//Asks the user to try again until they enter a valid
//response of Y or N
while(!valid)
{
System.out.print("Try another number? (Y/N): ");
reply = scan.next().toUpperCase();
doAgain = reply.charAt(0);
System.out.println();
if(doAgain == 'Y' || doAgain == 'N')
valid = true;
else
System.out.println("Please type 'Y' or 'N'.");
}
}while(doAgain != 'N');
Goodbye();
}
/*----------------------------------------------------------*/
/********************STATIC METHODS BELOW********************/
/*----------------------------------------------------------*/
/****************************************/
//Welcome method...a welcoming 'graphic'//
/****************************************/
public static void Welcome()
{
System.out.println("=============");
System.out.println("Prime or Not");
System.out.println("=============");
System.out.println();
}
/****************************************************/
//PrimeTest determines if the number is prime or not//
/****************************************************/
public static boolean PrimeTest(int n)
{
boolean isPrime = true;
if(n > 0)
{
for(int x = 2; x <= Math.sqrt(n); x++)
{
if(n % 2 == 0)
isPrime = false;
else if(n % x == 0)
isPrime = false;
else
isPrime = true;
}
}
else
System.out.println("Please enter a positive integer.");
return isPrime;
}
/****************************************/
//Goodbye method...a departing 'graphic'//
/****************************************/
public static void Goodbye()
{
System.out.println("===============");
System.out.println("Try again soon!");
System.out.println("===============");
System.out.println();
}
}
Вот что происходит. Я поставлю несколько цифр, и это ответит на многие ошибки. Затем, когда я нажимаю Y, чтобы сделать другое, он просто заставляет меня вводить цифры и говорить мне, если это просто или нет, и никогда не спросит меня, хочу ли я продолжать идти. Я абсолютно не знаю, как исправить любую проблему.