Even-Odd check (জোড় অথবা বিজোড় সংখ্যা যাচাই)


Q1. একটি সংখ্যা জোড় না বিজোড় তা নির্ণয়ের C program লিখ। জোড় সংখ্যা হলে Even Number এবং বিজোড় সংখ্যা Odd Number প্রদর্শন কর।

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

(১) সখ্যাটিকে ২ দিয়ে ভাগ করা

(২) ভাগশেষ শূন্য কীনা তা যাচাই করা।

C তে ভাগশেষ যাচাই করার একটি চমৎকার অপারেটর আছে তা মডুলাস (%) অপারেটর। নিচের কোডটি লক্ষ্য করি-

c=n%2;  

কোডটিকে কম্পাইলার যেভাবে ইন্টারপ্রিট করে তা হলঃ n কে 2 দিয়ে ভাগ কর এবং ভাগশেষকে c এর মধ্যে জমা কর।

এখানে n হল ইউজার যে সংখ্যাটিকে যাচাই করতে চায় এবং c হল ভাগশেষ। এখন নিচের কোডটি লক্ষ্য করি-

if(c==0)

এর অর্থ হলঃ c কী শূন্যের ‘0’ সমান? নিচের if…else কন্ডিশনাল স্টেটমেন্টটি লক্ষ্য করা যাক-

if(c==0)
 printf("Even Number");
else 
 printf("Odd Number");

উপরের কোডটির অর্থ দাড়াল যে যদি c এর মান-

(ক) শূন্য হয় তবে printf(“Even Number”); স্টেটমেন্ট কার্যকর হবে

(খ) শূন্য না হয় তবে printf(“Odd Number”); স্টেটমেন্ট কার্যকর হবে

এবার সম্পুর্ণ প্রোগ্রামটি দেখা যাক-

#include<stdio.h>
#include<conio.h>
int main() 
{
 int c,n; 
 printf("Enter any integer: \n");
 scanf("%d", &n);
 c=n%2;  
 if(c==0)
  printf("Even Number"); 
 else 
  printf("Odd Number");	
}

ব্যাখ্যাঃ

(১) n এর মান যেকোনো জোড় সংখ্যা যেমন 20 হলে c=n%2; এর মাধ্যমে c=0 শুণ্য হবে।

(২) c এর মান শূন্য হলে if(c==0) কন্ডিশন সত্য হবে ফলে আউটপুটে Even Number প্রদর্শিত হবে।

(৩) n এর মান যেকোনো বিজোড় সংখ্যা যেমন 21 হলে c=n%2; এর মাধ্যমে c এর মান শূন্য হবে না।

(৪) c এর মান শূন্য না হলে if(c==0) কন্ডিশন মিথ্যা হবে ফলে আউটপুটে Odd Number প্রদর্শিত হবে।

3 responses to “Even-Odd check (জোড় অথবা বিজোড় সংখ্যা যাচাই)”

  1. Owesome & understanding & uncommon explanation…Thanks sir

  2. ppidelowar says:

    Thank you Rittik. Please let me know if you have any query related this topic.

  3. ppidelowar says:

    Thank you Rittik.

Leave a Reply

Your email address will not be published.