Java Program do sprawdzania liczby pierwszej

Co to jest liczba pierwsza?

Liczba pierwsza to liczba, która jest podzielna tylko przez 1 lub przez samą siebie. Na przykład 11 jest podzielna tylko przez 1 lub przez samą siebie. Inne liczby pierwsze 2, 3, 5, 7, 11, 13, 17….

Uwaga: 0 i 1 nie są liczbami pierwszymi. 2 jest jedyną parzystą liczbą pierwszą.

Java Program sprawdzający, czy liczba jest liczbą pierwszą, czy nie

Logika programu:

  • Musimy podzielić liczbę wejściową, powiedzmy 17, od wartości od 2 do 17 i sprawdzić resztę. Jeśli reszta wynosi 0, liczba nie jest liczbą pierwszą.
  • Żadna liczba nie jest podzielna przez więcej niż połowę samej siebie. Więc musimy pętla przez właśnie numberToCheck/2 . Jeśli wartość wejściowa wynosi 17, połowa wynosi 8.5, a pętla będzie iterować po wartościach od 2 do 8
  • Jeśli numberToCheck jest całkowicie podzielny przez inną liczbę, flaga isPrime jest ustawiona na false i pętla zostaje zamknięta.
public class PrimenumberToCheckCheck {
 
 public static void main(String[] args) {
  int remainder;
  boolean isPrime=true;
  int numberToCheck=17; // Enter the numberToCheckber you want to check for prime
        
  //Loop to check whether the numberToCheckber is divisible any numberToCheckber other than 1 and itself
  for(int i=2;i<=numberToCheck/2;i++)
  {
   //numberToCheckber is divided by itself
            remainder=numberToCheck%i;
            System.out.println(numberToCheck+" Divided by "+ i + " gives a remainder "+remainder);
            
       //if remainder is 0 than numberToCheckber is not prime and break loop. Else continue the loop
     if(remainder==0)
     {
        isPrime=false;
        break;
     }
  }
  // Check value true or false, if isprime is true then numberToCheckber is prime otherwise not prime
  if(isPrime)
     System.out.println(numberToCheck + " is a Prime numberToCheckber");
  else
     System.out.println(numberToCheck + " is not a Prime numberToCheckber");
    }
  }

Oczekiwany wynik:

17 Divided by 2 gives a remainder 1
17 Divided by 3 gives a remainder 2
17 Divided by 4 gives a remainder 1
17 Divided by 5 gives a remainder 2
17 Divided by 6 gives a remainder 5
17 Divided by 7 gives a remainder 3
17 Divided by 8 gives a remainder 1
17 is a Prime numberToCheckber

Sprawdź nasz program Znajdź premia Numbers od 1 do 100