25/07/2025
প্রাইম নাম্বার:
গণিতের পরিভাষায় প্রাইম নাম্বার বা মৌলিক সংখ্যা হল এমন স্বাভাবিক সংখ্যা যার কেবলমাত্র দুটো পৃথক উৎপাদক আছে: ১ এবং ঐ সংখ্যাটি নিজে। যেমনঃ ২, ৩, ৫, ৭, ১১ ইত্যাদি সংখ্যাগুলোর ১ এবং এই সংখ্যাগুলো নিজে ব্যতীত আর কোন উৎপাদক নেই।
এখন আমরা একটি সংখ্যার প্রাইমালিটি টেস্ট বা প্রাইম কি না তা নির্ণয় করা শিখব। ধরে নেয়া যাক তোমাকে একটি সংখ্যা 'X' দেয়া হল। তোমাকে বলতে হবে সংখ্যাটি প্রাইম কিনা। কত সহজে তুমি এটা বের করতে পারবে?
একটি সমাধান হতে পারে এরকম যে, তুমি ১ থেকে X পর্যন্ত একটি লুপ চালিয়ে দেখবে কতগুলো সংখ্যাদিয়ে X কে নিঃশেষে বিভাজন করা যায়। অর্থাৎ তোমাকে বের করতে হবে, ১ থেকে X পর্যন্ত কতগুলো সংখ্যা রয়েছে, যে সংখ্যাগুলো দিয়ে X কে ভাগ করলে কোন ভাগফল পাওয়া যায়না। আমি ধরে নিচ্ছি এ সহজ কাজটি তোমরা একাই করতে পারবে। তবুও বোঝার সুবিধার্থে কাজটি আমি C++ করে দেখিয়ে দিচ্ছি।
bool isPrime(int x) {
int cnt = 0;
for (int i = 1; i 2;
}
উপরোক্ত ফাংশনটি রিটার্ন করছে cnt ভ্যারিয়বলটি ২ এর চেয়ে বড় কিনা। যদি বড় হয় তাহলে true রিটার্ন করবে, অন্যথায় false রিটার্ন করবে। তোমরা হয়ত নিশ্চয়ই বুঝতে পারছো যে কেন আমি এই কাজটি করলাম। আমরা ইতোপূর্বে জেনেছি যে, একটি প্রাইম সংখ্যার কেবল ২ টি মাত্রই divisor থাকেঃ ১ এবং সংখ্যাটি নিজে। তাই ফাংশনটি false রিটার্ন করলে আমরা বলতে পারি 'X' একটি প্রাইম নাম্বার, অন্যথায় প্রাইম নাম্বার নয়।
উপরের সমাধান অনুযায়ী তোমাকে প্রাইমালিটি টেস্ট করার জন্য লুপটিকে 'X' সংখ্যকবার চালাতে হবে। এখন প্রশ্ন হচ্ছে এরচেয়ে কম সংখ্যকবার লুপ চালিয়ে একটা সংখ্যার প্রাইমালিটি টেস্ট করা কি সম্ভব?
কি মনে হয়?🤔🤔