প্রাইম নাম্বার কি? সি প্রোগ্রামে বিভিন্নভাবে প্রাইম নাম্বার বের করা

প্রাইম নাম্বার কি? এটা মনে হয় প্রায় সবাই জানেন তাই এইটা নিয়া আর বেহুদা প্যাঁচাল না পারি আমরা সমস্যায় চলে যাই।

১ম সমসাঃ আমাদের একটি প্রোগ্রাম লিখতে হবে যেটি ইনপুট নিয়ে বলে দিতে পারবে ইনপুট দেওয়া সংখ্যাটি প্রাইম কিনা।

এই সমস্যাটি বিভিন্ন লজিকে সমাধান করা যায়, আমরা সবচেয়ে সহজ পদ্ধতি সমাধান করবো। প্রাইম নাম্বারের সংজ্ঞা থেকে আমারা জানি, প্রাইম নাম্বার মাত্র দুটি সংখ্যা দ্বারা নিঃশেষে বিভাজ্য হবে( একটি ১ অন্যটি ঐ সংখ্যা নিজে)


তাহলে আমরা প্রোগ্রামে একটি সংখ্যা ইনপুট দিলে সংখ্যাটি যদি ২ বার নিঃশেষে বিভাজ্য হয় তাহলে প্রাইম র না হলে প্রাইম নয়। 



#include <stdio.h>
int main (void)
{
int n,i,count=0;
printf ("Enter your number");
scanf ("%d",&n);
for (i=1;i<=n;i++){
if (n%i==0) count++;
}
if (count==2) printf ("%d is prime number\n",n);
else
printf("%d is not prime number\n",n );
return 0;
}
view raw gistfile1.c hosted with ❤ by GitHub




উপরের প্রোগ্রামটি না বোঝার কিছু নাই।
আমারা এখানে for loop i এর মান 1, i, n থেকে ছোট বা সমান এবংI এর মান একএক করে বাড়বে। প্রতিবার loop repeat হওয়ার সময় if এর মধ্যকার শর্ত চেক হবেশর্তে বলা আছে যখন n এবংI এর ভাগশেষ শুন্য হবে তখন count এর মান এক বাড়বে।ভাগশেষ শূন্য হবে যখন n, i দ্বারা নিঃশেষে বিভাজ্য হবে।এভাবে চললে দেখা যাবে count এর মান 2 হবে যদি input দেওয়া নাম্বারটি প্রাইম হয় আর যদি না হয় নাম্বার টি 
প্রাইম নয়।

প্রোগ্রামটি অন্যভাবে করা যায় যেমন
সিভ অফ এন্টারস্থেনিজ থিওরি "প্রয়োগ করে প্রাইম নাম্বার বের করা