C ++ प्रोग्राम यह जाँचने के लिए कि क्या कोई संख्या दो अभाज्य संख्याओं के योग के रूप में व्यक्त की जा सकती है

यह जांचने के लिए उदाहरण है कि क्या पूर्णांक (उपयोगकर्ता द्वारा दर्ज किया गया है) को फ़ंक्शन के उपयोग के साथ सभी संभावित संयोजनों की दो प्रमुख संख्याओं के योग के रूप में व्यक्त किया जा सकता है।

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

  • लूप के लिए सी ++
  • C ++ अगर, अगर… और नहीं तो नेस्टेड… और
  • C ++ फ़ंक्शंस
  • C ++ में उपयोगकर्ता-परिभाषित फ़ंक्शंस के प्रकार

यह कार्यक्रम उपयोगकर्ता से एक सकारात्मक पूर्णांक लेता है और जाँचता है कि क्या उस संख्या को दो अभाज्य संख्याओं के योग के रूप में व्यक्त किया जा सकता है।

यदि संख्या को दो अभाज्य संख्याओं के योग के रूप में व्यक्त किया जा सकता है, तो आउटपुट अभाज्य संख्याओं के संयोजन को दर्शाता है।

इस कार्य को करने के लिए, अभाज्य संख्या की जाँच करने के लिए एक उपयोगकर्ता-परिभाषित फ़ंक्शन बनाया जाता है।

उदाहरण: जांचें कि क्या एक संख्या को दो प्रमुख संख्याओं के योग के रूप में व्यक्त किया जा सकता है

 #include using namespace std; bool checkPrime(int n); int main() ( int n, i; bool flag = false; cout <> n; for(i = 2; i <= n/2; ++i) ( if (checkPrime(i)) ( if (checkPrime(n - i)) ( cout << n << " = " << i << " + " << n-i << endl; flag = true; ) ) ) if (!flag) cout << n << " can't be expressed as sum of two prime numbers."; return 0; ) // Check prime number bool checkPrime(int n) ( int i; bool isPrime = true; // 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; ) ) ) return isPrime; ) 

आउटपुट

 एक सकारात्मक पूर्णांक दर्ज करें: 34 34 = 3 + 31 34 = 5 + 29 34 = 11 + 23 34 = 17 + 17 

इस प्रोग्राम में, हम checkPrime()फ़ंक्शन का उपयोग यह जांचने के लिए करते हैं कि कोई नंबर प्राइम है या नहीं।

में main(), हम उपयोगकर्ता से एक संख्या लेते हैं और इसे चर n में संग्रहीत करते हैं।

हम एक boolवैरिएबल फ्लैग को भी इनिशियलाइज़ करते हैं false। हम इस चर का उपयोग यह निर्धारित करने के लिए करते हैं कि क्या इनपुट नंबर को दो प्रमुख संख्याओं के योग के रूप में व्यक्त किया जा सकता है।

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

अगर मैं प्रधान हूँ, तो हम जाँचते हैं कि n - i प्रधान है या नहीं।

यदि n - मैं भी एक प्रधान है, तो हम जानते हैं कि n को दो अभाज्य संख्याओं i और n - i के योग के रूप में व्यक्त किया जा सकता है।

इसलिए, हम परिणाम को स्क्रीन पर प्रिंट करते हैं और ध्वज के मान को बदल देते हैं true। नहीं तो झंडा रहता है false

लूप के समाप्त होने तक यह प्रक्रिया जारी रहती है।

यदि ध्वज अभी भी है false, तो हम जानते हैं कि n को दो अपराधों के योग के रूप में व्यक्त नहीं किया जा सकता है, और हम उस संदेश को स्क्रीन पर प्रिंट करते हैं।

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