JavaでNumberが素数であるかどうかを確認する方法は? 最初のN素数を生成して印刷する方法は?
公開: 2020-08-08
素数とは何ですか?
定義によれば、1より大きく、それ自体が1つの分周器しかないPrime number
と呼ばれます。 他の番号はComposite Number
と呼ばれます。
見てみましょう:2、3、5、7、11、13は素数です。
以下の質問がある場合は、適切な場所にいます。
- Javaの素数プログラム
- 数値が素数かどうかをチェックするJavaプログラム
- 1から200までの素数を表示するJavaプログラム
- Javaで素数を決定する方法
- Javaでの素数の生成
- 最初の500個の素数の合計を出力します
しばらく前に、フィボナッチ数列の印刷方法に関する記事を書きました。 このチュートリアルでは、以下の点について説明します。
- Javaで素数を決定する2つの異なる方法
- Javaで素数を生成する最良の方法
始めましょう:
- クラスCrunchifyIsPrimeAndGeneratePrime.javaを作成します
- crunchifyIsPrimeNumber(int)を作成して、数値が素数かどうかを確認しますか?
- crunchifyIsPrimeNumberMethod2(int)を作成して、数値が素数であるか、差分アプローチを使用していないかを確認します
- crunchifyGeneratePrimeNumbers(int)は、2から指定された数までの素数を生成します
Javaで最初の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 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 + " " ) ; } } |
EclipseIDEまたはIntelliJIDEAで上記の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 |
/ 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 |