এই বিভাগে আমরা দেখব কিভাবে কোন সংখ্যা বিজোড় বা জোড় কোন প্রকার শর্তসাপেক্ষ বিবৃতি যেমন (<, <=, !=,>,>=, ==) ব্যবহার না করে পরীক্ষা করা যায়।
আমরা শর্তসাপেক্ষ বিবৃতি ব্যবহার করে সহজেই বিজোড় বা জোড় পরীক্ষা করতে পারি। আমরা তারপর সংখ্যাটিকে 2 দ্বারা ভাগ করতে পারি, তারপর অবশিষ্টটি 0 কিনা তা পরীক্ষা করে দেখুন। যদি 0, তাহলে এটা জোড়। অন্যথায় আমরা সংখ্যা এবং 1 দিয়ে পারফর্ম এবং অপারেশন করতে পারি। যদি উত্তরটি 0 হয়, তাহলে এটি জোড়, অন্যথায় বিজোড়।
এখানে কোন শর্তসাপেক্ষ বিবৃতি ব্যবহার করা যাবে না। থিওড বা জোড় পরীক্ষা করার জন্য আমরা দুটি ভিন্ন পদ্ধতি দেখব।
পদ্ধতি 1
এখানে আমরা স্ট্রিং এর একটি অ্যারে তৈরি করব। সূচক 0 অবস্থান "জোড়" ধরে থাকবে, এবং সূচক 1 অবস্থানটি "বিজোড়" ধারণ করবে। আমরা সরাসরি ফলাফল পেতে সূচক হিসাবে সংখ্যাটিকে 2 দ্বারা ভাগ করার পরে অবশিষ্ট পাঠাতে পারি।
উদাহরণ কোড
#include <iostream> using namespace std; main() { int n; string arr[2] = {"Even", "Odd"}; cout << "Enter a number: "; //take the number from the user cin >> n; cout << "The number is: " << arr[n%2]; //get the remainder to choose the string }
আউটপুট 1
Enter a number: 40 The number is: Even
আউটপুট 2
Enter a number: 89 The number is: Odd
পদ্ধতি 2
এটি দ্বিতীয় পদ্ধতি। এই পদ্ধতিতে আমরা কিছু কৌশল ব্যবহার করব। এখানে লজিক্যাল এবং বিটওয়াইজ অপারেটর ব্যবহার করা হয়। প্রথমে আমরা সংখ্যা এবং 1 দিয়ে AND অপারেশন করছি। তারপর লজিক্যাল ব্যবহার করছি এবং বিজোড় বা জোড় প্রিন্ট করতে হবে। যখন bitwise AND এর ফলাফল 1 হয়, তখন শুধুমাত্র যৌক্তিক ANDoperation বিজোড় ফলাফল প্রদান করবে, অন্যথায় এটি জোড় ফিরে আসবে।
উদাহরণ কোড
#include <iostream> using namespace std; main() { int n; string arr[2] = {"Even", "Odd"}; cout << "Enter a number: "; //take the number from the user cin >> n; (n & 1 && cout << "odd")|| cout << "even"; //n & 1 will be 1 when 1 is present at LSb, so it is odd. }
আউটপুট 1
Enter a number: 40 even
আউটপুট 2
Enter a number: 89 odd