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

C++ प्रोग्राम: STL का उपयोग करके दी गई सीमा में अभाज्य संख्याएं प्रिंट करना

इस ट्यूटोरियल में, हम C++ स्टैंडर्ड टेम्पलेट लाइब्रेरी का उपयोग करके दी गई संख्या की सीमा के लिए अभाज्य संख्याएं प्रिंट करने के प्रोग्राम पर चर्चा करेंगे।

इसमें, हमें दो संख्याएं a और b दी जाएंगी। कार्य इस सीमा में आने वाली सभी अभाज्य संख्याओं को प्रिंट करना है। इसके लिए, हम एराटोस्थनीज की छलनी (Sieve of Eratosthenes) विधि का उपयोग इसे सबरूटीन के रूप में चलाकर करेंगे। साथ ही हम सभी अभाज्य संख्याओं को एक वेक्टर में स्टोर करेंगे और अंत में उन सभी को प्रिंट करेंगे।

उदाहरण

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

typedef unsigned long long int unll;

vector eratosthemes(unll n) {
    vector prime_num(n + 1, true);
    prime_num[0] = false;
    prime_num[1] = false;
    int m = sqrt(n);
    for (unll p = 2; p <= m; p++) {
        if (prime_num[p]) {
            for (unll i = p * 2; i <= n; i += p)
                prime_num[i] = false;
        }
    }
    vector elements;
    for (int i = 0; i < n; i++)
        if (prime_num[i])
            elements.push_back(i);
    return elements;
}

bool check_zero(unll i) {
    return i == 0;
}

vector sieve_range(unll start, unll end) {
    vector s1 = eratosthemes(start);
    vector s2 = eratosthemes(end);
    vector elements(end - start);
    set_difference(s2.begin(), s2.end(), s1.begin(), s2.end(), elements.begin());
    vector::iterator itr = remove_if(elements.begin(), elements.end(), check_zero);
    elements.resize(itr - elements.begin());
    return elements;
}

int main(void) {
    unll start = 10;
    unll end = 90;
    vector elements = sieve_range(start, end);
    for (auto i : elements)
        cout << i << ' ';
    return 0;
}

आउटपुट

11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89
  1. - C++ प्रोग्राम: एराटोस्थनीज की छलनी द्वारा दी गई सीमा में अभाज्य संख्याएं उत्पन्न करना

    यह दी गई सीमा में अभाज्य संख्याएं उत्पन्न करने के लिए एराटोस्थनीज की छलनी को लागू करने वाला C++ प्रोग्राम है। इस विधि में, एक पूर्णांक सरणी जिसके सभी तत्व शून्य से आरंभ होते हैं। यह वहां अनुसरण करता है जहां प्रत्येक गैर-अभाज्य तत्व का सूचकांक नेस्टेड लूप के अंदर 1 के रूप में चिह्नित होता है। अभाज्य

  1. - C++ प्रोग्राम: व्हील छलनी द्वारा दी गई सीमा में अभाज्य संख्याएं उत्पन्न करना

    व्हील छलनी विधि का उपयोग दी गई सीमा में अभाज्य संख्या खोजने के लिए किया जाता है। व्हील फैक्टराइज़ेशन एराटोस्थनीज की छलनी के प्रारंभिक चरण को मैन्युअल रूप से करने की एक ग्राफिकल विधि है जो अभाज्य संख्याओं को सम्मिश्र संख्याओं से अलग करती है। इस विधि में, सबसे आंतरिक वृत्त में अभाज्य संख्याओं के गुणक

  1. - C++ में फ़ंक्शन का उपयोग करके दो अंतराल के बीच अभाज्य संख्याएं प्रदर्शित करने का प्रोग्राम

    एक अभाज्य संख्या एक पूर्ण संख्या है जो एक से बड़ी होती है और अभाज्य संख्या के केवल कारक एक और स्वयं होने चाहिए। कुछ पहली अभाज्य संख्याएँ 2, 3, 5, 7, 11, 13, 17 आदि हैं। दो अंतराल के बीच कई अभाज्य संख्याएँ हो सकती हैं। उदाहरण के लिए, अंतराल 5 और 20 के बीच अभाज्य संख्याएँ 5, 7, 11, 13, 17 और 19 हैं। द