ในการคำนวณว่าจำนวนนั้นเป็นจำนวนเฉพาะหรือไม่ เราได้ใช้การวนซ้ำและภายในนั้นในทุกๆ การวนซ้ำ เรามีคำสั่ง if เพื่อค้นหาว่าเศษที่เหลือมีค่าเท่ากับ 0 ระหว่างตัวเลขนั้นเอง
for (int i = 1; i <= n; i++) {
if (n % i == 0) {
a++;
}
} ตัวนับ a จะถูกเพิ่มเข้าไปด้วย ซึ่งจะเพิ่มขึ้นเพียงสองครั้งหากตัวเลขเป็นจำนวนเฉพาะ เช่น กับ 1 และตัวตัวเลขเอง ดังนั้น หากค่าของ a คือ 2 แสดงว่าจำนวนนั้นเป็นจำนวนเฉพาะ
ให้เราดูตัวอย่างที่สมบูรณ์เพื่อตรวจสอบว่าตัวเลขเป็นจำนวนเฉพาะหรือไม่ -
ตัวอย่าง
using System;
namespace Demo {
class MyApplication {
public static void Main() {
int n = 17, a = 0;
for (int i = 1; i <= n; i++) {
if (n % i == 0) {
a++;
}
}
if (a == 2) {
Console.WriteLine("{0}: Prime Number", n);
} else {
Console.WriteLine("{0}: Not a Prime Number");
}
Console.ReadLine();
}
}
} ผลลัพธ์
17: Prime Number