C ++ प्रोग्राम यह जाँचने के लिए कि कोई संख्या प्रधान है या नहीं

यह जांचने के लिए उदाहरण है कि क्या पूर्णांक (उपयोगकर्ता द्वारा दर्ज किया गया) एक अभाज्य संख्या है या लूप के लिए उपयोग नहीं किया गया है और यदि … और विवरण।

इस उदाहरण को समझने के लिए, आपको निम्नलिखित C ++ प्रोग्रामिंग विषयों का ज्ञान होना चाहिए:

  • C ++ अगर, अगर… और नहीं तो नेस्टेड… और
  • लूप के लिए सी ++
  • C ++ ब्रेक और स्टेटमेंट जारी रखें

एक सकारात्मक पूर्णांक जो केवल 1 से विभाज्य है और खुद को अभाज्य संख्या के रूप में जाना जाता है।

उदाहरण के लिए: 13 एक अभाज्य संख्या है क्योंकि यह केवल 1 और 13 से विभाज्य है लेकिन, 15 अभाज्य संख्या नहीं है क्योंकि यह 1, 3, 5 और 15 से विभाज्य है।

नोट: 0 और 1 अभाज्य संख्याएँ नहीं हैं।

उदाहरण: प्राइम नंबर की जाँच करें

 #include using namespace std; int main() ( int i, n; bool isPrime = true; cout <> n; // 0 and 1 are not prime numbers if (n == 0 || n == 1) ( isPrime = false; ) else ( for (i = 2; i <= n / 2; ++i) ( if (n % i == 0) ( isPrime = false; break; ) ) ) if (isPrime) cout << n << " is a prime number"; else cout << n << " is not a prime number"; return 0; ) 

आउटपुट

 एक सकारात्मक पूर्णांक दर्ज करें: 29 29 एक प्रमुख संख्या है।

यह कार्यक्रम उपयोगकर्ता से एक सकारात्मक पूर्णांक लेता है और इसे चर n में संग्रहीत करता है।

ध्यान दें कि बूलियन चर .Prime trueकार्यक्रम की शुरुआत में आरंभीकृत किया जाता है।

चूँकि 0 और 1 अभाज्य संख्याएँ नहीं हैं, हम पहले जाँचते हैं कि इनपुट संख्या उन संख्याओं में से एक है या नहीं। यदि इनपुट नंबर 0 या 1 है , तो isPrime का मान सेट है false

इसके अलावा, isPrime के प्रारंभिक मूल्य को अपरिवर्तित छोड़ दिया जाता है और forलूप निष्पादित किया जाता है, जो यह जांचता है कि उपयोगकर्ता द्वारा दर्ज की गई संख्या आई द्वारा पूरी तरह से विभाज्य है या नहीं।

 for (i = 2; i <= n / 2; ++i) ( if (n % i == 0) ( isPrime = false; break; ) ) 

forपाश से चलाता है i == 2के लिए i <= n / 2और प्रत्येक यात्रा के साथ 1 से मैं का मूल्य बढ़ जाता।

लूप समाप्त हो जाता है i == n / 2क्योंकि हम संख्या से परे n के लिए कोई कारक नहीं खोज सकते n / 2 । तो, परे कोई पुनरावृत्ति n / 2बेमानी है।

यदि उपयोगकर्ता द्वारा दर्ज की गई संख्या i द्वारा पूरी तरह से विभाज्य है, तोPrime को सेट कर दिया जाता है falseऔर संख्या एक अभाज्य संख्या नहीं होगी।

लेकिन अगर लूप की संपूर्णता में इनपुट संख्या पूरी तरह से विभाज्य नहीं है, तो इसका मतलब है कि इनपुट संख्या केवल 1 से विभाज्य है और वह संख्या स्वयं है।

तो, दी गई संख्या एक प्रमुख संख्या है।

के मामले में n == 2, forलूप चलाने में विफल रहता है और आईप्राइम का मान बना रहता है true

दिलचस्प लेख...