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

C++-এ প্রাইম ট্রিপলেট


এই সমস্যায় একটি সংখ্যা N দেওয়া আছে। N-এর চেয়ে ছোট সব প্রাইম ট্রিপলেট প্রিন্ট করতে হবে।

প্রাইম ট্রিপলেট হলো তিনটি প্রাইম নম্বরের সেট যা (p, p+2, p+6) বা (p, p+4, p+6) রূপে থাকে। প্রতিটি তৃতীয় প্রাইম সরাসরি প্যাটার্নে ৬-এর গুণফল হয়।

উদাহরণ:

ইনপুট: N = 13 আউটপুট: 5 7 11

সমাধান: N-এর চেয়ে ছোট বা সমান সকল প্রাইম বের করে ট্রিপলেট চেক করব।

উদাহরণ

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

void findPrimes(int n, bool prime[]) {
    for (int p = 2; p * p <= n; p++) {
        if (prime[p] == true) {
            for (int i = p * 2; i <= n; i += p)
                prime[i] = false;
        }
    }
}

void printPrimeTriplets(int n) {
    bool prime[n + 1];
    memset(prime, true, sizeof(prime));
    findPrimes(n, prime);
    for (int i = 2; i <= n-6; ++i) {
        if (prime[i] && prime[i + 2] && prime[i + 6])
            cout << i << "\t" << (i+2) << "\t" << (i+6) << endl;
        else if (prime[i] && prime[i + 4] && prime[i + 6])
            cout << i << "\t" << (i + 4) << "\t" << (i + 6) << endl;
    }
}

int main() {
    int N = 15;
    cout << "Prime Triplets Less than " << N << " are :\n";
    printPrimeTriplets(N);
    return 0;
}

আউটপুট

Prime Triplets Less than 15 are : 5   7   11 7   11   13

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

  2. C++ ব্যবহার করে মেরসেন প্রাইম সংখ্যা বের করা

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

  4. C++ প্রোগ্রাম: ফুল প্রাইম (Full Prime) চেক করা