Nội dung chính
Đề bài
Viết chương trình C# kiểm tra số đã cho có phải là số nguyên tố hay không.
Định nghĩa: số nguyên tố là số lớn hơn 1 và chỉ chia hết cho 1 và chính nó.
Ví dụ: 2, 3, 5, 7, 11, 13, 17, ... là những số nguyên tố.
Chú ý: Số 0 và 1 không phải là số nguyên tố. Chỉ có số 2 là số nguyên tố chẵn, tất cả các số chẵn khác không phải là số nguyên tố vì chúng chia hết cho 2.
Ví dụ check số nguyên tố trong C#
Chương trình sau kiểm tra một số có phải là số nguyên tố hay không:
using System;
using System.Collections;
namespace VietTutsCsharp
{
class Program
{
static void Main(string[] args)
{
int i;
Console.Write("Cac so nguyen to nho hon 100 la: \n");
for (i = 0; i < 100; i++)
{
if (isPrimeNumber(i))
{
Console.Write("{0} ", i);
}
}
Console.WriteLine();
Console.ReadKey();
}
/**
* check so nguyen to trong C
*
* @author viettuts.vn
* @param n: so nguyen duong
* @return 1 la so nguyen so,
* 0 khong la so nguyen to
*/
static Boolean isPrimeNumber(int n)
{
// so nguyen n < 2 khong phai la so nguyen to
if (n < 2)
{
return false;
}
// check so nguyen to khi n >= 2
int squareRoot = (int)Math.Sqrt(n);
int i;
for (i = 2; i <= squareRoot; i++)
{
if (n % i == 0)
{
return false;
}
}
return true;
}
}
}
Kết quả:
Cac so nguyen to nho hon 100 la: 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
Trong ví dụ trên, phương thức Math.Sqrt() được sử dụng để tính căn bậc 2 của a.