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

C++ में अगला सबसे छोटा अभाज्य पेलिंड्रोम


हमें एक संख्या N दी गई है। हमें वह अभाज्य पेलिंड्रोम ज्ञात करना है जो N से बड़ा है। आइए एक उदाहरण देखते हैं।

इनपुट

N = 10

आउटपुट

11

एल्गोरिदम

  • संख्या N आरंभ करें।
  • जांचने के लिए एक फ़ंक्शन लिखें कि दी गई संख्या अभाज्य है या नहीं।
  • जांचने के लिए एक फ़ंक्शन लिखें कि दी गई संख्या पेलिंड्रोम है या नहीं।
  • एक लूप लिखें जो N + 1 से अगला अभाज्य पेलिंड्रोम मिलने तक पुनरावृति करता है।
    • जांचें कि संख्या अभाज्य और पेलिंड्रोम है या नहीं।
    • यदि संख्या अभाज्य और पेलिंड्रोम है।
    • संख्या वापस करें।

कार्यान्वयन

निम्नलिखित C++ में उपरोक्त एल्गोरिदम का कार्यान्वयन है:

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

bool isPrime(int n) { 
    if (n < 2) return false; 
    for (int i = 2; i <= sqrt(n); i++) { 
        if (n % i == 0) return false; 
    } 
    return true; 
} 

bool isPalindrome(int n) { 
    int num, digit, rev = 0; 
    n = num; 
    while (num) { 
        digit = num % 10; 
        rev = (rev * 10) + digit; 
        num = num / 10; 
    } 
    return n == rev ? true : false; 
} 

int getNextSmallestPrimePalindrome(int n) { 
    int i = n + 1; 
    while (true) { 
        if (isPrime(i) && isPalindrome(i)) { 
            return i; 
        } 
        i += 1; 
    } 
} 

int main() { 
    int N = 15; 
    cout << getNextSmallestPrimePalindrome(N) << endl; 
    return 0; 
}

आउटपुट

यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्नलिखित परिणाम मिलेगा।

17

  1. - C++ में प्राइम पालिंड्रोम (Prime Palindrome)

    मान लीजिए हमें N से बड़ा या बराबर सबसे छोटा प्राइम पालिंड्रोम खोजना है। उदाहरण के लिए, यदि N = 13 है, तो सबसे छोटा पालिंड्रोम 101 होगा। समाधान दृष्टिकोण यदि N 8 से 11 के बीच है, तो 11 लौटाएं i को 1 से 99999 तक: विषम लंबाई के पालिंड्रोम बनाएं s := i को स्ट्रिंग में बदलें, r := s को रिवर्स करें num

  1. - C++ में अभाज्य त्रिक (Prime Triplet)

    इस समस्या में, हमें एक संख्या N दी गई है। हमारा कार्य N से कम सभी अभाज्य त्रिकों (prime triplets) को प्रिंट करना है। अभाज्य त्रिक (Prime triplet) तीन अभाज्य संख्याओं का एक समूह है। जो (p, p+2, p+6) या (p, p+4, p+6) के रूप में होते हैं। सभी अभाज्य संख्याओं को उपरोक्त त्रिकों के अनुसार समूहीकृत किया

  1. - C++ में संतुलित अभाज्य संख्या

    संतुलित अभाज्य संख्या क्या है? एक अभाज्य संख्या जो अपने पिछले और अगले अभाज्य संख्याओं का औसत होती है। सूत्र: Pₙ = (P(n-1) + P(n+1)) / 2 पहली कुछ संतुलित अभाज्य संख्याएं: 5, 53, 157, 173, ... हल दृष्टिकोण सीव ऑफ एराटोस्थनीज का उपयोग करके अभाज्य संख्याएं उत्पन्न करें, फिर जांचें कि कौन सी संतुलित अ