Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में किसी संख्या को अधिकतम संभव अभाज्य संख्याओं के योग के रूप में प्रस्तुत करना


एक समस्या पर चर्चा करें जहां हमें एक संख्या N दी गई है, और हमें इस संख्या को अधिकतम अभाज्य संख्याओं के योग में विभाजित करने की आवश्यकता है, उदाहरण के लिए:

इनपुट: N = 7
आउटपुट: 2 2 3
व्याख्या: 7 को दो 2 और एक 3 के योग के रूप में प्रस्तुत किया जा सकता है जो अधिकतम संभव अभाज्य संख्याएं हैं।

इनपुट: N = 17
आउटपुट: 2 2 2 2 2 2 2 3

समाधान खोजने का दृष्टिकोण

किसी संख्या को अभाज्य संख्याओं में प्रस्तुत करने के लिए, हम N से एक अभाज्य संख्या घटा सकते हैं और अंतर की जांच कर सकते हैं कि क्या यह अभाज्य है। यदि अंतर अभाज्य है, तो हम N को दो अभाज्य संख्याओं के योग के रूप में प्रस्तुत कर सकते हैं।

लेकिन यहां, हमें अधिकतम संख्या में अभाज्य संख्याएं खोजनी हैं, और इसके लिए, हमें न्यूनतम अभाज्य संख्याएं लेनी चाहिए, यानी 2 और 3। हम किसी भी संख्या को 2 और 3 के योग से बना सकते हैं।

  • संख्या के सम होने की जांच करें; यदि यह सम है, तो इसे (N/2) 2 के योग से बनाया जा सकता है।

  • यदि यह विषम है, तो इसे एक 3 और [(N-3)/2] 2 के योग से बनाया जा सकता है।

  • इस तरह, हम N को अधिकतम संख्या में अभाज्य संख्याओं के योग द्वारा प्रस्तुत कर सकते हैं।

उदाहरण

#include <bits/stdc++.h>
using namespace std;

int main() {
    int N = 7;
    // जांचना कि N विषम है,
    // यदि हां, तो 3 प्रिंट करें
    // और N से 3 घटाएं।
    if (N & 1 == 1) {
        cout << "3 +";
        N -= 3;
    }
    // // 2 घटाते और प्रिंट करते रहें
    // जब तक N 0 न हो जाए।
    while (N != 2) {
        cout << " 2 +";
        N -= 2;
    }
    cout << " 2";
    return 0;
}

आउटपुट

3 + 2 + 2

निष्कर्ष

इस ट्यूटोरियल में, हमने किसी संख्या को अधिकतम संख्या में अभाज्य संख्याओं के योग के रूप में प्रस्तुत करने पर चर्चा की। हमने 2 और 3 के योग के रूप में संख्याओं को प्रस्तुत करके इस समस्या को हल करने के एक सरल दृष्टिकोण पर चर्चा की। हमने इस समस्या के लिए C++ प्रोग्राम पर भी चर्चा की जिसे हम C, Java, Python आदि प्रोग्रामिंग भाषाओं के साथ कर सकते हैं। आशा है कि आपको यह ट्यूटोरियल मददगार लगा होगा।

  1. C++ में डुडनी नंबर (Dudeney Numbers) C++ में डुडनी नंबर (Dudeney Numbers)

    संख्या सिद्धांत में परिभाषित एक गणितीय संख्या एक दी गई संख्या आधार में एक प्राकृतिक संख्या है जो दूसरी प्राकृतिक संख्या के पूर्ण घन के बराबर होती है जैसे कि पहली प्राकृतिक संख्या का अंक योग दूसरी संख्या के अंक योग के बराबर होता है (विकिपीडिया)। इस संख्या की खोज हेनरी डुडनी ने की थी। इसका गणितीय सू

  1. - C++ में सिंगली लिंक्ड लिस्ट में न्यूनतम और अधिकतम अभाज्य संख्या

    समस्या कथनn पॉजिटिव इंटीजर्स की एक लिंक्ड लिस्ट दी गई है। हमें न्यूनतम और अधिकतम मान वाली अभाज्य संख्या ढूंढनी है।यदि दी गई लिस्ट है - 33 तो न्यूनतम अभाज्य संख्या 2 है और अधिकतम अभाज्य संख्या 13 हैएल्गोरिदम1. दी गई संख्या से अधिकतम नंबर ढूंढें। इसे maxNumber कहें 2. 1 से maxNumber तक अभाज्य संख्याएं

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

    यह जांचने का एक उदाहरण है कि क्या कोई संख्या दो अभाज्य संख्याओं के योग के रूप में व्यक्त की जा सकती है। उदाहरण #include <iostream> using namespace std; int func(int num) {    int i;    int flag = 1;    for(i = 2; i <= num/2; ++i) {       if(num %