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

C++ का उपयोग करके अभाज्य संख्याएं खोजने का सबसे तेज़ एल्गोरिदम कौन सा है?


एराटोस्थनीज की छलनी (Sieve of Eratosthenes) n से छोटी अभाज्य संख्याएं खोजने के सबसे कुशल तरीकों में से एक है जब n लगभग 10 मिलियन से छोटा हो।

एराटोस्थनीज की छलनी को प्रदर्शित करने वाला एक प्रोग्राम निम्नलिखित है।

उदाहरण

#include <bits/stdc++.h> using namespace std; void SieveOfEratosthenes(int num) {    bool pno[num+1];    memset(pno, true, sizeof(pno));    for (int i = 2; i*i< = num; i++) {       if (pno[i] == true) {          for (int j = i*2; j< = num; j + = i)          pno[j] = false;       }    }    for (int i = 2; i< = num; i++)    if (pno[i])    cout << i << " "; } int main() {    int num = 15;    cout << "अभाज्य संख्याएं जो "<< num <<" से छोटी या बराबर हैं: ";    SieveOfEratosthenes(num);    return 0; }

आउटपुट

उपरोक्त प्रोग्राम का आउटपुट निम्नलिखित है।

15 से छोटी या बराबर अभाज्य संख्याएं: 2 3 5 7 11 13

अब, आइए उपरोक्त प्रोग्राम को समझते हैं।

फंक्शन SieveOfEratosthenes() उन सभी अभाज्य संख्याओं को ढूंढता है जो num से पहले आती हैं जो आर्गुमेंट के रूप में प्रदान की जाती है। इसके लिए कोड स्निपेट निम्नलिखित है।

void SieveOfEratosthenes(int num) {    bool pno[num+1];    memset(pno, true, sizeof(pno));    for (int i = 2; i*i< = num; i++) {       if (pno[i] == true) {          for (int j = i*2; j< = num; j + = i)          pno[j] = false;       }    }    for (int i = 2; i< = num; i++)    if (pno[i])    cout << i << " "; }

main() फंक्शन num का मान सेट करता है और फिर num से छोटी या बराबर सभी अभाज्य संख्याओं को प्रिंट करता है। यह SieveOfEratosthenes() फंक्शन को कॉल करके किया जाता है। इसके लिए कोड स्निपेट निम्नलिखित है।

int main() {    int num = 15;    cout << "अभाज्य संख्याएं जो "<< num <<" से छोटी या बराबर हैं: ";    SieveOfEratosthenes(num);    return 0; }

  1. C++ का उपयोग करके पेंटागोनल पिरामिडल संख्या ज्ञात करना C++ का उपयोग करके पेंटागोनल पिरामिडल संख्या ज्ञात करना

    एक पेंटागोनल पिरामिडल संख्या पेंटागोनल बेस पिरामिड में वस्तुओं की संख्या के बराबर होती है। नीचे कुछ पेंटागोनल संख्याएं देखें। N तक पेंटागोनल संख्याओं का योग Nवीं पेंटागोनल पिरामिडल संख्या के बराबर होता है। इस लेख में, हम Nवीं पेंटागोनल पिरामिडल संख्या खोजने पर चर्चा करेंगे, उदाहरण के लिए: इनपुट:

  1. C++ में स्ट्रिंग के सबस्ट्रिंग्स की संख्या निकालना C++ में स्ट्रिंग के सबस्ट्रिंग्स की संख्या निकालना

    इस लेख में, आप एक दी गई स्ट्रिंग में बनने वाले सबस्ट्रिंग्स (गैर-खाली) की संख्या निकालने के दृष्टिकोण के बारे में जानेंगे।इनपुट: string = moon आउटपुट: 10 व्याख्या: सबस्ट्रिंग्स हैं m, o, o, n, mo, oo, on, moo, oon और moon। इनपुट: string = yellow आउटपुट: 21समाधान खोजने का दृष्टिकोणमान लें स्ट्रिंग की

  1. C++ का उपयोग करके स्टॉपिंग स्टेशनों की संख्या ज्ञात करें C++ का उपयोग करके स्टॉपिंग स्टेशनों की संख्या ज्ञात करें

    बिंदु X और Y के बीच n संख्या में इंटरमीडिएट ट्रेन स्टेशन हैं। उन विभिन्न तरीकों की गणना करें जिनसे ट्रेनों को s स्टेशनों पर रुकने के लिए व्यवस्थित किया जा सकता है जैसे कि कोई दो स्टेशन एक-दूसरे के बगल में न हों। तो इस लेख में, हम स्टॉपिंग स्टेशनों की संख्या ज्ञात करने के लिए हर संभव दृष्टिकोण की व्य