Java Program pro kontrolu prvočísla
Co je prvočíslo?
Prvočíslo je číslo, které je dělitelné pouze 1 nebo samo sebou. Například 11 je dělitelné pouze 1 nebo sebou samým. Další prvočísla 2, 3, 5, 7, 11, 13, 17….
Poznámka: 0 a 1 nejsou prvočísla. 2 je jediné sudé prvočíslo.
Java Program pro kontrolu, zda je číslo prvočíslo nebo ne
Programová logika:
- Potřebujeme vydělit vstupní číslo, řekněme 17, od hodnot 2 do 17 a zkontrolovat zbytek. Pokud je zbytek 0, číslo není prvočíslo.
- Žádné číslo není dělitelné více než polovinou sebe sama. Takže musíme smyčka přes jen
numberToCheck/2
. Pokud je vstup 17, polovina je 8.5 a smyčka bude iterovat přes hodnoty 2 až 8 - Pokud je numberToCheck zcela dělitelné jiným číslem, příznak isPrime je nastaven na
false
a smyčka je opuštěna.
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"); } }
Očekávaný výstup:
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
Podívejte se na náš program Najít pojistné Numbers od 1 do 100