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

सी ++ में मेर्सन प्राइम नंबर।

विवरण

गणित में, मेर्सन प्राइम एक अभाज्य संख्या है जो दो की शक्ति से एक कम है। अर्थात्, यह किसी पूर्णांक n के लिए Mn =2n - 1 के रूप की एक अभाज्य संख्या है।

इनपुट धनात्मक पूर्णांक n से छोटे सभी Mersenne Primes को प्रिंट करने के लिए एक C++ प्रोग्राम लिखें।

घातांक n जो Mersenne primes देते हैं वे 2, 3, 5, 7,... और परिणामी Mersenne primes 3, 7, 31, 127

हैं।

एल्गोरिदम

1. Generate all the primes less than or equal to the given number n
2. Iterate through all numbers of the form 2n-1 and check if they are primes or not

उदाहरण

#include <iostream>
#include <algorithm>
using namespace std;
void generatePrimes(bool *primes, int n){
   fill(primes, primes + n + 1, true);
   for (int p = 2; p * p <= n; ++p) {
      if (primes[p] == true) {
         for (int i = p * 2; i <= n; i += p) {
            primes[i] = false;
         }
      }
   }
}
void mersennePrimes(int n){
   bool primes[n + 1];
   generatePrimes(primes, n);
   for (int i = 2; ((1 << i) - 1) <= n; ++i) {
      int num = (1 << i) - 1;
      if (primes[num]) {
         cout << num << " ";
      }
   }
   cout << endl;
}
int main(){
   int n = 100;
   cout << "Mersenne primes numbers till " << n << endl;
   mersennePrimes(n);
   return 0;
}

आउटपुट

जब आप उपरोक्त प्रोग्राम को संकलित और निष्पादित करते हैं। यह निम्न आउटपुट उत्पन्न करता है -

Mersenne primes numbers till 100
3 7 31

  1. n में अभाज्य संख्या p की घात ज्ञात करना! सी++ में

    इस समस्या में, हमें एक संख्या n और एक अभाज्य संख्या p दी गई है। हमारा काम है n में अभाज्य संख्या p की घात ज्ञात करना! समस्या को समझने के लिए एक उदाहरण लेते हैं, Input : n = 6, p = 2 Output : 4 समाधान दृष्टिकोण समस्या का एक सरल समाधान केवल n! का मान ज्ञात करना है। और इसका गुणनखंड करें, और गुणनखंड

  1. C++ में मितव्ययी संख्या

    इस समस्या में, हमें एक धनात्मक पूर्णांक N दिया जाता है। हमारा कार्य यह जाँचने के लिए एक प्रोग्राम बनाना है कि दी गई संख्या मितव्ययी संख्या है या नहीं। मितव्ययी संख्या - एक संख्या जिसके अंकों की संख्या दी गई संख्या के अभाज्य गुणनखंड में अंकों की संख्या से अधिक है। उदाहरण − 625, संख्या 625 का अभाज्

  1. सी++ पेंटाटोप नंबर

    पास्कल के त्रिभुज में एक पंचकोण संख्या को पाँचवीं संख्या के रूप में वर्णित किया गया है। अब, जैसा कि आप जानते हैं, यह पांचवीं संख्या है, तो इसका मतलब है कि हमारे पास पास्कल के त्रिकोण में कम से कम पांच संख्याएं होनी चाहिए, इसलिए इस श्रृंखला की पहली संख्या 1 4 6 4 1 से शुरू होती है। पास्कल त्रिभुज की