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

C++ में अभाज्य स्ट्रिंग (Prime String)


इस समस्या में, हमें एक स्ट्रिंग दी गई है। हमारा कार्य हां / नहीं प्रिंट करना है, यह इस आधार पर कि उस स्ट्रिंग के वर्णों के ASCII मानों का योग अभाज्य है या नहीं।

ASCII मान वर्ण एन्कोडिंग होते हैं।

अभाज्य संख्या वह संख्या है जो केवल स्वयं और 1 से विभाज्य होती है।

आइए एक उदाहरण से समझते हैं:

इनपुट: स्ट्रिंग = "Hello"
आउटपुट: नहीं

इस समस्या को हल करने के लिए, हमें स्ट्रिंग के सभी वर्णों के ASCII मानों का योग निकालना होगा। और योग को एक वेरिएबल में स्टोर करके जांचना होगा कि वह योग अभाज्य संख्या है या नहीं।

उदाहरण

#include <iostream>
using namespace std;

bool CheckPrimeString(string str) {
    int len = str.length(), sum = 0;
    for (int i = 0; i < len; i++)
        sum += (int)str[i];
    if (sum <= 1)
        return false;
    if (sum <= 3)
        return true;
    if (sum % 2 == 0 || sum % 3 == 0)
        return false;
    for (int i = 5; i * i <= sum; i = i + 6)
        if (sum % i == 0 || sum % (i + 2) == 0)
            return false;
    return true;
}

int main() {
    string str = "Hello!";
    cout << "स्ट्रिंग '" << str << "' ";
    if (CheckPrimeString(str))
        cout << "एक अभाज्य स्ट्रिंग है\n";
    else
        cout << "अभाज्य स्ट्रिंग नहीं है\n";
}

आउटपुट

स्ट्रिंग 'Hello!' अभाज्य स्ट्रिंग नहीं है
  1. - C++ में एलिक्वॉट योग (Aliquot Sum)

    यहां हम देखेंगे कि एलिक्वॉट योग क्या है? n का एलिक्वॉट योग n को छोड़कर n के सभी पूर्ण गुणनखंडों का योग है। उदाहरण के लिए, यदि संख्या 20 है, तो पूर्ण गुणनखंड (1, 2, 4, 5, 10) हैं। तो एलिक्वॉट योग 22 है। एक दिलचस्प तथ्य यह है कि, यदि किसी संख्या का एलिक्वॉट योग संख्या स्वयं है, तो वह संख्या एक पूर्ण

  1. - C++ में स्ट्रिंग को टोकनाइज़ करना

    इस खंड में, हम देखेंगे कि C++ में स्ट्रिंग्स को कैसे टोकनाइज़ किया जाए। C में हम कैरेक्टर सरणी के लिए strtok() फंक्शन का उपयोग कर सकते हैं। यहां हमारे पास एक स्ट्रिंग क्लास है। अब हम देखेंगे कि उस स्ट्रिंग से किसी डिलीमीटर का उपयोग करके स्ट्रिंग को कैसे काटा जाए। C++ सुविधा का उपयोग करने के लिए, हम

  1. - C++ में स्ट्रिंग को टोकनाइज़ कैसे करें?

    पहला तरीका शब्दों को स्पेस से अलग करके पढ़ने के लिए stringstream का उपयोग करना है। यह थोड़ा सीमित है लेकिन अगर आप उचित चेक प्रदान करते हैं तो यह कार्य काफी अच्छी तरह से करता है। उदाहरण #include <vector> #include <string> #include <sstream> using namespace std; int main() {