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

C++ में N से कम सभी सुरक्षित अभाज्य संख्याएं प्रिंट करें


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

एक सुरक्षित अभाज्य संख्या एक अभाज्य संख्या है जिसे [(2*p) - 1] के रूप में दर्शाया जा सकता है जहां p भी एक अभाज्य संख्या है।

उदाहरण - 5[(2*2) +1], 7[(2*3)+1]।

समस्या को बेहतर ढंग से समझने के लिए कुछ उदाहरण लेते हैं -

इनपुट: N = 12 आउटपुट: 5 7 11

इस समस्या को हल करने के लिए, हम N से कम सभी अभाज्य संख्याएं ढूंढेंगे (इसके लिए हम एराटोस्थनीज की छलनी का उपयोग करेंगे)। और जांचेंगे कि अभाज्य संख्या सुरक्षित अभाज्य संख्या है या नहीं और यदि यह सुरक्षित अभाज्य संख्या है तो प्रिंट करें।

उदाहरण

#include <bits/stdc++.h> using namespace std; void printPrime(int n){    cout<<n<<"\t"; } void generateSafePrimes(int n){    int prime[n + 1];    for (int i = 2; i <= n; i++)       prime[i] = 1;    prime[0] = prime[1] = 0;    for (int p = 2; p * p <= n; p++) {       if (prime[p] == 1) {          for (int i = p * 2; i <= n; i += p)             prime[i] = 0;       }    }    for (int i = 2; i <= n; i++) {       if (prime[i] != 0) {          int temp = (2 * i) + 1;          if (temp <= n && prime[temp] != 0)             prime[temp] = 2;       }    }    for (int i = 5; i <= n; i++)       if (prime[i] == 2)          printPrime(i); } // ड्राइवर कोड int main(){    int n = 34;    cout<<"safe Prime numbers less than "<<n<<" are :\n";    generateSafePrimes(n);    return 0; }

आउटपुट

34 से कम सुरक्षित अभाज्य संख्याएं हैं -

5 7 11 23

  1. C++ में बाइनरी ट्री के सभी इंटरनल नोड्स प्रिंट करना C++ में बाइनरी ट्री के सभी इंटरनल नोड्स प्रिंट करना

    इस समस्या में, हमें एक बाइनरी ट्री दी गई है और हमें बाइनरी ट्री के सभी इंटरनल नोड्स प्रिंट करने हैं। बाइनरी ट्री बाइनरी ट्री एक ट्री है जिसमें एक नोड के अधिकतम 2 चाइल्ड नोड्स हो सकते हैं। नोड या वर्टेक्स में कोई नोड नहीं, एक चाइल्ड या दो चाइल्ड नोड्स हो सकते हैं। इंटरनल नोड इंटरनल नोड वह नोड है ज

  1. C++ में दिए गए नोड से दूरी K पर सभी नोड्स प्रिंट करना C++ में दिए गए नोड से दूरी K पर सभी नोड्स प्रिंट करना

    इस समस्या में, हमें एक बाइनरी ट्री, एक टारगेट नोड और एक पूर्णांक K दिया गया है। हमें ट्री के उन सभी नोड्स को प्रिंट करना है जो टारगेट नोड से दूरी K पर हैं। बाइनरी ट्री बाइनरी ट्री एक विशेष ट्री है जिसके प्रत्येक नोड में अधिकतम दो नोड्स होते हैं (एक/दो/कोई नहीं)। उदाहरण K = 2 टारगेट नोड: 9 आउटपुट

  1. C++ में बाइनरी ट्री में K लीफ वाले सभी नोड्स प्रिंट करना C++ में बाइनरी ट्री में K लीफ वाले सभी नोड्स प्रिंट करना

    इस समस्या में, हमें एक बाइनरी ट्री और एक पूर्णांक K दिया गया है और हमें बाइनरी ट्री के उन सभी नोड्स को प्रिंट करना है जिनके चाइल्ड सबट्री में K लीफ हैं। बाइनरी ट्री बाइनरी ट्री एक विशेष ट्री है जिसके प्रत्येक नोड में अधिकतम दो नोड्स होते हैं (एक/दो/कोई नहीं)। लीफ नोड बाइनरी ट्री का लीफ नोड ट्री क