„Java“ programa pirminiam skaičiui patikrinti

Turinys:

Anonim

Kas yra pirminis skaičius?

Pirminis skaičius yra skaičius, kuris dalijasi tik iš 1 arba jo paties. Pavyzdžiui, 11 dalijasi tik iš 1 arba jo paties. Kiti pirminiai skaičiai 2, 3, 5, 7, 11, 13, 17….

Pastaba: 0 ir 1 nėra pirminiai skaičiai. 2 yra vienintelis lyginis pirminis skaičius.

„Java“ programa patikrina, ar skaičius yra pagrindinis, ar ne

Programos logika:
  • Turime padalinti įvesties numerį, tarkim, 17 nuo 2 iki 17 ir patikrinti likusią dalį. Jei likusi dalis yra 0, skaičius nėra pagrindinis.
  • Nė vienas skaičius negali dalytis iš daugiau nei pusės jo paties. Taigi turime pereiti per tiesiog numberToCheck/2. Jei įvestis yra 17, pusė yra 8,5, o ciklas kartosis per reikšmes nuo 2 iki 8
  • Jei „numberToCheck“ yra visiškai padalijamas iš kito skaičiaus, nustatoma „flag isPrime“ vertė trueir išeinama iš ciklo.
viešoji klasė „PrimenumberToCheckCheck“public static void main (String [] argumentuoja) {int likusi;loginis isPrime = true;int skaičiusToCheck = 17; // Įveskite numberToCheckber, kurį norite patikrinti, ar yra pagrindinis// Kilpa, kad patikrintumėte, ar numeris „ToCheckber“ dalijasi, bet koks skaičius „ToCheckber“, išskyrus 1, ir jis patsskirta (int i = 2; i <= numberToCheck / 2; i ++){// numberToCheckber neria patslikutis = numberToCheck% i;System.out.println (skaičiusToCheck + "Padalinta iš" + i + "suteikia likutį" + likutį);// jei likusi dalis yra 0 nei numberToCheckber nėra pirminis ir pertraukiamasis ciklas. Elesė tęsia kilpąjei (likutis == 0){isPrime = klaidinga;pertrauka;}}// Patikrinkite reikšmę true arba false, jei isprime yra teisinga, tada numberToCheckber yra pagrindinis, kitaip nėra pagrindinisjei (isPrime)System.out.println (numberToCheck + "yra pirminis skaičiusToCheckber");KitasSystem.out.println (numberToCheck + "nėra pirminis skaičiusToCheckber");}}

Išvestis:

17 Divided by 2 gives a remainder 117 Divided by 3 gives a remainder 217 Divided by 4 gives a remainder 117 Divided by 5 gives a remainder 217 Divided by 6 gives a remainder 517 Divided by 7 gives a remainder 317 Divided by 8 gives a remainder 117 is a Prime Number

Patikrinkite mūsų programą ir raskite pirminius skaičius nuo 1 iki 100