I am new to java (and programming in general) and decided to make a program that checks whether a number is prime or not.
I made a working program:
import java.io.*;
public class PrimeChecker
{
public static void main (String[] args) throws IOException
{
BufferedReader Reader = new BufferedReader (new InputStreamReader (System.in));
int factor = 2;
boolean check = true;
System.out.println("Please input a number.");
int number = Integer.parseInt(Reader.readLine ());
if (number == 1)
{
System.out.println(number + " is neither prime nor composite.");
}
else
{
while (factor <= Math.sqrt(number))
{
if (number % factor == 0)
{
check = false;
break;
}
factor++;
}
if (check)
{
System.out.println(number + " is a prime number.");
}
else
{
System.out.println(number + " is a composite number (not prime).");
}
}
}
}
Then I read this, decided to play around with booleans a bit and changed it to this:
import java.io.*;
public class PrimeCheckerv2
{
public static void main (String[] args) throws IOException
{
BufferedReader Reader = new BufferedReader (new InputStreamReader (System.in));
int factor = 2;
System.out.println("Please input a number.");
int number = Integer.parseInt(Reader.readLine ());
if (number == 1)
{
System.out.println(number + " is neither prime nor composite.");
}
else
{
while (factor <= Math.sqrt(number))
{
public boolean isPrime()
{
return (!(number % factor == 0));
}
factor++;
}
if (isPrime)
{
System.out.println(number + " is a prime number.");
}
else
{
System.out.println(number + " is a composite number (not prime).");
}
}
}
}
I believe I did everything as instructed in the previously linked page I read but my new code is getting these 3 errors:
File: C:\Users\Aion\Documents\DrJava\Other\PrimeCheckerv2.java [line: 19]
Error: Syntax error, insert "VariableDeclarators" to complete LocalVariableDeclaration
File: C:\Users\Aion\Documents\DrJava\Other\PrimeCheckerv2.java [line: 19]
Error: Syntax error, insert ";" to complete BlockStatements
File: C:\Users\Aion\Documents\DrJava\Other\PrimeCheckerv2.java [line: 19]
Error: Syntax error, insert ";" to complete Statement
I have looked through many questions on this site looking for something that might explain them but have found nothing. Can anyone tell me why I am getting these errors?
public boolean isPrime()inside your while-loop insidemainisPrime()method inside yourmainmethod.