Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

โปรแกรม C++ เพื่อตรวจสอบหมายเลขเฉพาะโดยการสร้างฟังก์ชัน


จำนวนเฉพาะคือจำนวนเต็มที่มากกว่า 1 และตัวประกอบเฉพาะของจำนวนเฉพาะควรเป็นหนึ่งและตัวของมันเอง

จำนวนเฉพาะตัวแรกคือ −

2, 3, 5, 7, 11, 13 ,17

โปรแกรมตรวจสอบจำนวนเฉพาะว่าเป็นจำนวนเฉพาะหรือไม่ใช้ฟังก์ชันมีดังต่อไปนี้

ตัวอย่าง

#include <iostream>
using namespace std;
void isPrime(int n) {
   int i, flag = 0;
   for(i=2; i<=n/2; ++i) {
      if(n%i==0) {
         flag=1;
         break;
      }
   }
   if (flag==0)
   cout<<n<<" is a prime number"<<endl;
   else
   cout<<n<<" is not a prime number"<<endl;
}
int main() {
   isPrime(17);
   isPrime(20);
   return 0;
}

ผลลัพธ์

17 is a prime number
20 is not a prime number

ฟังก์ชัน isPrime() ถูกใช้เพื่อค้นหาว่าตัวเลขนั้นเป็นจำนวนเฉพาะหรือไม่ มีลูปที่วิ่งจาก 2 ถึงครึ่งหนึ่งของ n โดยที่ n คือตัวเลขที่จะกำหนด แต่ละค่าของการวนซ้ำหาร n หากเศษที่เหลือของการหารนี้เป็น 0 แสดงว่า n หารด้วยตัวเลขลงตัว ไม่ใช่ตัวเดียวหรือตัวมันเอง ดังนั้นจึงไม่ใช่จำนวนเฉพาะและตั้งค่าสถานะเป็น 1 จากนั้นคำสั่ง break จะใช้เพื่อออกจากลูปดังที่แสดงด้านล่าง −

for(i=2; i<=n/2; ++i) {
   if(n%i==0) {
      flag=1;
      break;
   }
}

หากค่าของแฟล็กยังคงเป็นศูนย์ แสดงว่าตัวเลขนั้นเป็นจำนวนเฉพาะและแสดงขึ้น หากค่าของแฟล็กถูกเปลี่ยนเป็นหนึ่ง ตัวเลขนั้นไม่ใช่จำนวนเฉพาะและจะแสดงขึ้น

if (flag==0)
cout<<n<<" is a prime number";
else
cout<<n<<" is not a prime number";

ฟังก์ชัน isPrime() ถูกเรียกจากฟังก์ชัน main() สำหรับค่า 17 และ 20 ซึ่งแสดงดังต่อไปนี้

isPrime(17);
isPrime(20);