কম্পিউটার টিউটোরিয়াল

C++-এ প্রাইম স্ট্রিং (ASCII ভ্যালু যোগফল প্রাইম কিনা)


এই সমস্যায় একটি স্ট্রিং দেওয়া আছে। স্ট্রিংয়ের সব ক্যারেক্টারের ASCII ভ্যালুর যোগফল প্রাইম কিনা সেটা চেক করে YES/NO প্রিন্ট করতে হবে।

ASCII ভ্যালু হচ্ছে ক্যারেক্টার এনকোডিং। প্রাইম নম্বর হলো সেই সংখ্যা যা শুধু ১ এবং নিজের দ্বারা বিভাজ্য।

উদাহরণ:

ইনপুট: string = "Hello" আউটপুট: No

সমাধান: স্ট্রিংয়ের সব ক্যারেক্টারের 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 << "The string '" << str << "' is ";
    if (CheckPrimeString(str))
        cout << "a prime String \n";
    else
        cout << "not a prime String\n";
}

আউটপুট

The string 'Hello! ' is not a prime String

  1. ব্যালেন্সড প্রাইম C++-এ

  2. C++-এ অ্যালিকোট সম (Aliquot Sum)

  3. C++-এ স্ট্রিং টোকেনাইজেশন: স্ট্রিম এবং getline() ব্যবহার

  4. C++-এ স্ট্রিং টোকেনাইজ (Tokenize) করা