素数は 1 より大きい整数であり、数値 1 のみとそれ自体の約数となることができます。つまり、数値「n」は 1 または「n」自体でのみ割り切れます。よく知られている素数には、2、3、5、7、9、11、13、17、19、23 などがあります。素数を扱う C# プログラムは、指定された素数かどうかを調べるために使用できます。数値は素数かどうかを指定し、指定された範囲内のすべての素数を表示します。これは、C# プログラムで、for ループ、if 条件、if else 条件、while ループなどのさまざまなループや条件ステートメントを使用してロジックを定義することで実現できます。
次のプログラミング例を使用して、素数を概念化してみましょう。
1 から 100 までのすべての素数のリストを出力する C# プログラム。
コード:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) // this function defines the entry point { bool Prime = true; Console.WriteLine("Prime Numbers between 1 to 100 : "); for (int a = 2; a <= 100; a++) //upper limit and lower limit are defined { for (int b = 2; b <= 100; b++)// base logic for the primality { if (a != b && a % b == 0) //modulo operators employed { Prime = false; break; } } if (Prime) { Console.Write("\t" + a); //printing the correct variable } Prime = true; } Console.ReadKey(); //hold the output screen } } }
出力:
プログラムの説明: 上記のプログラムは、固定された数値範囲内の素数を決定するためにループと条件演算子を使用する典型的な例です。上記のプログラムでは、自然数の下限、つまり 2 を使用し、「a」を 2 から 99 の範囲の自然数として定義し、演算後の増分は 1 です。次のステップでは、同様の範囲の変数「b」を使用します。ただし、上限の条件にバインドされており、常に 'a' より小さくなります。次に、ループは範囲を通過し、変数 a に対して除数 b によるモジュロの自然な演算を使用します。
a が b で完全に割り切れる場合、モジュロ演算子は 0 を返します。これは、より小さい自然数としての b が合成数 a の因数であるという事実を示します。ゼロに等しくない a % b の値を受け取った場合に備えて、フラグにブール値パラメーター Prime を使用します。ここで、数値を素数として受け取った場合に備えて、条件演算子を使用して出力コンソールに数値を出力しました。
for ループで素数をチェックする
コード:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { public static void Main(string[] args) { int n, a, m = 0, PrimeIndicator = 0; Console.Write("Please enter the number to check for Primality: "); n = int.Parse(Console.ReadLine()); m = n / 2; for (a = 2; a <= m; a++) { if (n % a == 0) { Console.Write("The entered number is not a Prime number ."); PrimeIndicator = 1; break; } } if (PrimeIndicator == 0) Console.Write("The entered number is a Prime number . "); } } }
出力:
プログラムの説明: 上記のプログラムは、素数性の条件を定義するために for ループを使用します。入力読み取りフィールドはユーザー入力をキャプチャして変数 n に代入し、カウンターは値 2 から値 n-1 までを解析し、割り算の条件をテストして数値が素数かどうかを判断します。プログラムは、値が n/2 または最初のユーザー入力のちょうど半分の変数 m を使用し、プログラムは値 m までのみループを解析します。
while ループを使用した素数性。
コード:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int n, i, a; Console.Write("Enter any number: "); n = Convert.ToInt32(Console.ReadLine()); // read the user input a = 0; i = 2; while (i <= n / 2) { if (n % i == 0) { a = 1; break; } i++; } if (a == 0) Console.WriteLine(n + " Prime Number as there are no factors"); else Console.WriteLine(n + " not a Prime Number "); Console.ReadLine(); } } }
出力:
プログラムの説明: 上記のプログラムは、C# の while ループを使用して数値の素数を決定するプロセスを示しています。上記のプログラムは、制御読み取りコマンドを使用してユーザー入力を読み取り、範囲 2 からユーザー入力を 2 で割った値まで解析して、数値の素数性をテストするために使用されるフラグの値を決定します。ループ内で値が代入され、a.
の値に従って結果が表示されます。素数は、したがって、1 とそれ自身のみを因数とする 1 より大きい自然数です。合成数は素因数として分解でき、これらの数値は素因数と呼ばれます。上に示したさまざまなプログラムは、do、for、while ループなどのループを使用して任意の数の素数を実装する方法を提供します。上記すべてのプログラムの実装の背後にあるロジックは、モジュロ演算子を使用して数値の因数を見つけることですが、同じ実装はループの選択に応じてさまざまなポイントで制御されます。
以上がC# の素数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。