এটি এরাটোস্থেনিসের ছাঁনি (Sieve of Eratosthenes) বাস্তবায়ন করে দত্তক পরিসরের মৌলিক সংখ্যা তৈরি করার C++ প্রোগ্রাম। এই পদ্ধতিতে, একটি পূর্ণসংখ্যা অ্যারে সব এলিমেন্ট শূন্য দিয়ে ইনিশিয়ালাইজ করা হয়।
এটি নেস্টেড লুপের ভেতরে প্রতিটি নন-প্রাইম এলিমেন্টের ইনডেক্সকে ১ হিসেবে চিহ্নিত করে। যেসব ইনডেক্স ০ চিহ্নিত থাকে, সেগুলোই মৌলিক সংখ্যা।
অ্যালগরিদম
শুরু
সাইজ n এর একটি অ্যারে ঘোষণা করুন এবং শূন্য দিয়ে ইনিশিয়ালাইজ করুন
length, i, j ঘোষণা করুন
length পড়ুন
i = 2 থেকে n-1 পর্যন্ত
j = i*i থেকে n-1 পর্যন্ত
Arr[j-1] = 1
শেষ
শেষ
i = 1 থেকে n পর্যন্ত
যদি (arr[i-1] == 0)
i প্রিন্ট করুন
শেষ
শেষ
উদাহরণ কোড
#include <iostream>
const int len = 30;
int main() {
int arr[30] = {0};
for (int i = 2; i < 30; i++) {
for (int j = i * i; j < 30; j += i) {
arr[j - 1] = 1;
}
}
for (int i = 1; i < 30; i++) {
if (arr[i - 1] == 0)
std::cout << i << "\t";
}
}
আউটপুট
1 2 3 5 7 11 13 17 19 23 29