¿Cómo verificar si el número es primo o no en Java? ¿Cómo generar e imprimir el primer número N primo?
Publicado: 2020-08-08
¿Qué es el número primo?
Según la definición, el número que es mayor que 1 y tiene solo 1 divisor, que es él mismo, se llama Prime number
. Otros números se llaman Composite Number
.
Echemos un vistazo: 2, 3, 5, 7, 11, 13 son números primos.
Está en el lugar correcto si tiene alguna de las siguientes preguntas.
- Programa de números primos en Java
- Programa Java para comprobar si un número es primo o no
- Programa Java para mostrar números primos del 1 al 200
- Cómo determinar un número primo en Java
- Generación de números primos en Java
- Imprime la suma de los primeros 500 números primos
Hace algún tiempo escribí un artículo sobre cómo imprimir series de Fibonacci. En este tutorial repasaremos los siguientes puntos:
- Dos formas diferentes de determinar un número primo en Java
- La mejor manera de generar números primos en Java
Empecemos:
- Crear clase CrunchifyIsPrimeAndGeneratePrime.java
- crear crunchifyIsPrimeNumber (int) para verificar si el número es primo?
- cree crunchifyIsPrimeNumberMethod2 (int) para verificar que el número sea primo o no use el enfoque diff
- crunchifyGeneratePrimeNumbers(int) genera un número primo entre 2 y el número proporcionado
¿Cómo mostrar los primeros N números primos en Java?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 |
package crunchify . com . tutorials ; import java . util . Scanner ; /** * @author Crunchify.com * How to Check if Number is Prime or not in Java? How to Generate first N Prime Numbers in Java? */ public class CrunchifyIsPrimeAndGeneratePrime { public static void main ( String [ ] args ) { System . out . println ( crunchifyIsPrimeNumber ( 11 ) ) ; System . out . println ( crunchifyIsPrimeNumber ( 22 ) ) ; System . out . println ( crunchifyIsPrimeNumber ( 37 ) ) ; System . out . println ( crunchifyIsPrimeNumber ( 7 ) ) ; System . out . println ( "\n" ) ; System . out . println ( crunchifyIsPrimeNumberMethod2 ( 3 ) ) ; System . out . println ( crunchifyIsPrimeNumberMethod2 ( 43 ) ) ; System . out . println ( crunchifyIsPrimeNumberMethod2 ( 23 ) ) ; System . out . println ( crunchifyIsPrimeNumberMethod2 ( 88 ) ) ; // Here 120 is an upper limit crunchifyGeneratePrimeNumbers ( 120 ) ; System . out . print ( "\n\n------ Let's find out if number is Prime or not ------ \n" + "Enter Number: " ) ; Scanner myInput = new Scanner ( System . in ) ; System . out . println ( crunchifyIsPrimeNumber ( myInput . nextInt ( ) ) ) ; // Java Program to display first n prime numbers crunchifyPrintFirstNPrimeNumbers ( 25 ) ; } private static String crunchifyIsPrimeNumber ( int crunchifyNumber ) { System . out . println ( "Prime check started for number: " + crunchifyNumber ) ; if ( crunchifyNumber == 1 ) { return "1 is not a Prime number..." ; } // Loop starts from 2 for ( int i = 2 ; i < = crunchifyNumber / 2 ; i ++ ) { if ( crunchifyNumber % i == 0 ) { return crunchifyNumber + " ==> is not a Prime Number" ; } } return crunchifyNumber + " ==> is a Prime Number" ; } // Another way to check if Number is Prime public static String crunchifyIsPrimeNumberMethod2 ( int crunchifyNumber ) { System . out . println ( "Prime check started for number: " + crunchifyNumber ) ; if ( crunchifyNumber == 1 ) { return "1 is not a Prime number..." ; } int limit = ( int ) Math . sqrt ( crunchifyNumber ) ; for ( int i = 2 ; i < = limit ; i ++ ) { if ( crunchifyNumber % i == 0 ) { return crunchifyNumber + " ==> is not a Prime Number" ; } } return crunchifyNumber + " ==> is a Prime Number" ; } /* Generate Prime Numbers */ public static void crunchifyGeneratePrimeNumbers ( int crunchifyUpperLimit ) { System . out . println ( "\n------ Generating all prime number between 2 to " + crunchifyUpperLimit + " ------ " ) ; for ( int i = 2 ; i < crunchifyUpperLimit ; i ++ ) { boolean crunchifyIsPrime = true ; // check to see if the number is prime for ( int j = 2 ; j < i ; j ++ ) { if ( i % j == 0 ) { crunchifyIsPrime = false ; break ; } } // print the number if ( crunchifyIsPrime ) System . out . print ( i + " " ) ; } } /* Java Program to display first n prime numbers */ public static void crunchifyPrintFirstNPrimeNumbers ( int crunchifyFirstNNumber ) { System . out . println ( "\n------ Generating first " + crunchifyFirstNNumber + " Prime Numbers ------ " ) ; int crunchifyNumber = 3 ; int crunchifyCheck = 1 ; for ( int counter = 2 ; counter < = crunchifyFirstNNumber ; ) { for ( int incrementer = 2 ; incrementer < = Math . sqrt ( crunchifyNumber ) ; incrementer ++ ) { if ( crunchifyNumber % incrementer == 0 ) { crunchifyCheck = 0 ; break ; } } if ( crunchifyCheck ! = 0 ) { crunchifyPrint ( crunchifyNumber ) ; counter ++ ; } crunchifyCheck = 1 ; crunchifyNumber ++ ; } } private static void crunchifyPrint ( int crunchifyNumber ) { System . out . println ( crunchifyNumber + " " ) ; } } |
Ejecute sobre el programa Java en Eclipse IDE o IntelliJ IDEA y debería ver lo siguiente.

Producción:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
/ Library / Java / JavaVirtualMachines / jdk - 15.jdk / Contents / Home / bin / java - javaagent : / Applications / IntelliJ IDEA . app / Contents / lib / idea_rt . jar = 60282 : / Applications / IntelliJ IDEA . app / Contents / bin - Dfile . encoding = UTF - 8 Prime check started for number : 11 11 == > is a Prime Number Prime check started for number : 22 22 == > is not a Prime Number Prime check started for number : 37 37 == > is a Prime Number Prime check started for number : 7 7 == > is a Prime Number Prime check started for number : 3 3 == > is a Prime Number Prime check started for number : 43 43 == > is a Prime Number Prime check started for number : 23 23 == > is a Prime Number Prime check started for number : 88 88 == > is not a Prime Number ------ Generating all prime number between 2 to 120 ------ 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 ------ Let ' s find out if number is Prime or not ------ Enter Number : 33 Prime check started for number : 33 33 == > is not a Prime Number ------ Generating first 25 Prime Numbers ------ 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 Process finished with exit code 0 |