Javaで1から100までの素数:Javaで1から100を表示

公開: 2021-02-08

目次

序章

まず、素数の定義から始めましょう。 数が1とそれ自体で割り切れる場合、その数は素数であると言われます。 1から100までの素数を言うように言われたら、紙の上の各数をチェックして、それが素数であるかどうかを言うのは退屈な仕事になるでしょう。 それを行うためのコードを書くことができ、Javaが物事を簡単にすることを気にしないでください。

Javaは人気があり、最も使用されている言語の1つであり、晴れた日のスポットライトの理由は、オブジェクト指向プログラミング、プラットフォームの独立性、事前定義されたライブラリなどの機能を提供することです。

1から100までの素数を印刷するためのコードを作成し、それを見ていきましょう。 はじめましょう!

Javaプログラム

コードにジャンプする前に、数値が素数であるかどうかを確認するアルゴリズムを理解します。 最初に、1からNまでのすべての数値をループし、指定された数値を適切に分割する数値のカウントを維持する必要があります。 カウントが2の場合、指定された数は素数であると結論付けることができます。そうでない場合、素数ではありません。 これを行うためのコードは次のとおりです。

int n = 5 ;
int c = 0 ;
for int i = 1 ; i <= n; i ++)
if (n%i == 0
c ++;
if (c == 2
System.out.println(n + ”は素数” );
そうしないと
System.out.println(n + ”は素数ではありません” );

上記のスニペットで、nは素数であるかどうかをチェックする数であり、cは適切な除数の数を格納する変数です。 そして、1からnの範囲でループし、適切な除数が見つかった場合はカウントをインクリメントします。

そして、ループから抜け出した後、カウントが2であるかどうかをチェックしています。 適切な除数は2つだけです(1とそれ自体)。 はいの場合は素数、それ以外の場合は非素数と結論付けます。 上記のコードの時間計算量について言えば、それは線形コードであるため、O(n)複雑度コードです。

1から100までの素数を出力するように求められたので、1から100までの各数に対してこれと同じアルゴリズムを実行し、素数を格納する必要があります。 そして、これを行うためのコードがあります。

ArrayList<整数>a= new ArrayList <>();
for int n = 1 ; n <= 100 ; n ++){
int c = 0 ;
for int i = 1 ; i <= n; i ++)
if (n%i == 0
c ++;
if (c == 2
a.add(n);
そうしないと
続行;
}
System.out.println(a);

上記のコードでは、1から100の範囲のすべての素数を格納するArrayListを宣言しました。これで、2つのforループがあります。最初のforループは、1から100までのすべての数値をループし、2番目のforループです。以前の素数アルゴリズムです。 各数値に対して素数アルゴリズムを実行した後、それが素数である場合は、それをArrayListにプッシュします。

チェックアウト:インドのJava開発者給与

そして、ループを完了した後、1から100までのすべての素数を表示するArrayListを出力しています。上記のコードの時間計算量について話すと、2つのforループがあることがわかります。 つまり、これはO( n²)の複雑さのコードです。

上記のコードで範囲をハードコーディングしましたが、ユーザー入力で指定された範囲の素数を出力したい場合はどうなりますか?

与えられた入力範囲の素数

アルゴリズム全体は上記のコードとほぼ同じですが、唯一の違いは、範囲の下限と上限に対してユーザー入力を取得することです。

今すぐコードを作成しましょう!

スキャナーsc=new Scanner(System.in);
int lower = sc.nextInt();
int upper = sc.nextInt();
ArrayList<整数>a= new ArrayList <>();
for(int n = lower; n <= upper; n ++){
int c = 0;
for(int i = 1; i <= n; i ++)
if(n%i == 0)
c ++;
if(c == 2)
a.add(n);
そうしないと
継続する;
}
System.out.println(a);

上記のコードでは、ユーザー入力を読み取るためのスキャナーを初期化しています。 下と上に2つの変数を宣言し、それらの変数にユーザー入力を割り当てました。 私たちがしなければならないのは、範囲[下、上]の間のすべての素数を出力することです。 以前のアルゴリズムはこのタスクを実行し、すべての素数をArrayListに追加します。

また読む: Javaプロジェクトのアイデアとトピック

世界のトップ大学からオンラインでソフトウェア開発コース学びましょう。 エグゼクティブPGプログラム、高度な証明書プログラム、または修士プログラムを取得して、キャリアを早急に進めましょう。

結論

素数の定義を理解し、アルゴリズムを調べて素数かどうかを調べ、そのアルゴリズムを拡張して1から100までの素数を見つけました。その後、Javaスキャナーを使用してユーザー入力を読み取りました。素数かどうかをチェックする数値の範囲を微調整し、ユーザーが指定した範囲の素数を出力するためのアルゴリズムを構築しました。

数が素数であるかどうかを確認する方法を理解したので、特定の範囲の素数を印刷する方法を理解しました。 関数を使用して実装する、オブジェクトを使用して実装する、再帰を使用してアルゴリズムを構築する、Javaで他のいくつかのコレクションを使用する、可能であればコードを少し最適化するなど、いくつかの課題を実装してみてください。練習はプログラミング言語の習得に役立つためです。 、構文と実装のあいまいさを克服するのに役立ちます。

Javaスキルを向上させたい場合は、これらのJavaプロジェクトを手に入れる必要があります。 Java、フルスタック開発について詳しく知りたい場合は、upGrad&IIIT-Bのフルスタックソフトウェア開発のエグゼクティブPGプログラムをチェックしてください。これは、働く専門家向けに設計されており、500時間以上の厳格なトレーニング、9以上のプロジェクトを提供します。 、および割り当て、IIIT-B卒業生のステータス、実践的な実践的なキャップストーンプロジェクト、およびトップ企業との雇用支援。

素数とは何ですか?

エラトステネスのふるいとは何ですか?

エラトステネスのふるいは、素数を見つけるための古代ギリシャのアルゴリズムです。 このアルゴリズムは、その時間に対して非常に高速でありながら素数を非常によく生成するという意味で、その単純さと効率で知られています。 このアルゴリズムは、2の倍数から始まり、Nの倍数で終わる合成数から各素数のすべての倍数を削除することによって機能します(Nは素数を検索する最後の数です)。 エラトステネスはギリシャの数学者であり、エジプトのアレクサンドリア図書館の創設者であると考えられていました。 彼は地球の円周とその直径を計算することでよく知られています。

データ構造とアルゴリズムとは何ですか?

データ構造は、コンピュータプログラムがデータを取得および変更できるようにデータを格納する方法です。 データ構造はプログラミング言語の抽象化です。 それ自体がエンティティである場合もあれば、別のデータエンティティの一部である場合もあります。 それ自体がデータである場合もあれば、他のデータにアクセスして操作するためのメカニズムである場合もあります。 データ構造は、データ定義、データ型、コンテンツ、およびコンテンツに適用できる操作で構成されます。 アルゴリズムは、コンピューターの問題を解決するための段階的な手順です。 各アルゴリズムは、問題の解決につながる一連のアクションです。