কম্পিউটার টিউটোরিয়াল

সি প্রোগ্রাম: কন্ডিশনাল স্টেটমেন্ট ছাড়া "Even" বা "Odd" প্রিন্ট করা


এই সেকশনে আমরা দেখব কিভাবে কোনো কন্ডিশনাল স্টেটমেন্ট (<, <=, !=, >, >=, ==) ব্যবহার না করেই একটি নম্বর কি অড (Odd) নাকি ইভেন (Even) তা চেক করা যায়।

আমরা সহজে কন্ডিশনাল স্টেটমেন্ট ব্যবহার করে অড বা ইভেন চেক করতে পারি। নম্বরটিকে ২ দিয়ে ভাগ করে রিমাইন্ডার ০ কিনা চেক করলে। যদি ০ হয়, তবে ইভেন। অন্যথায় আমরা নম্বর এবং ১-এর সাথে AND অপারেশন করতে পারি। যদি ফলাফল ০ হয়, তবে ইভেন, অন্যথায় অড।

এখানে কোনো কন্ডিশনাল স্টেটমেন্ট ব্যবহার করা যাবে না। আমরা অড বা ইভেন চেক করার দুটি আলাদা মেথড দেখব।

মেথড ১ (Method 1)

এখানে আমরা একটি স্ট্রিং অ্যারে তৈরি করব। ইনডেক্স ০ পজিশনে "Even" থাকবে, এবং ইনডেক্স ১ পজিশনে "Odd" থাকবে। আমরা নম্বরটিকে ২ দিয়ে ভাগ করার পর যে রিমাইন্ডার পাব, সেটিকে ইনডেক্স হিসেবে ব্যবহার করে সরাসরি ফলাফল পেতে পারি।

উদাহরণ কোড

#include <stdio.h>

main() {
    int n;
    char* arr[2] = {"Even", "Odd"};
    printf("Enter a number: "); // ইউজার থেকে নম্বর নিন
    scanf("%d", &n);
    printf("The number is: %s", arr[n%2]); // রিমাইন্ডার দিয়ে স্ট্রিং বেছে নিন
}

আউটপুট ১

Enter a number: 40
The number is: Even

আউটপুট ২

Enter a number: 89
The number is: Odd

মেথড ২ (Method 2)

এটি দ্বিতীয় মেথড। এই মেথডে আমরা কিছু ট্রিক ব্যবহার করব। এখানে লজিক্যাল এবং বিটওয়াইজ অপারেটর ব্যবহার করা হয়েছে। প্রথমে নম্বর এবং ১-এর সাথে AND অপারেশন করা হচ্ছে। তারপর লজিক্যাল AND ব্যবহার করে অড বা ইভেন প্রিন্ট করা হচ্ছে। যখন বিটওয়াইজ AND-এর ফলাফল ১ হয়, তবে লজিক্যাল AND অপারেশনটি "odd" রিটার্ন করবে, অন্যথায় "even" রিটার্ন করবে।

উদাহরণ কোড

#include <stdio.h>

main() {
    int n;
    char *arr[2] = {"Even", "Odd"};
    printf("Enter a number: "); // ইউজার থেকে নম্বর নিন
    scanf("%d", &n);
    (n & 1 && printf("odd")) || printf("even"); // n & 1 হবে ১ যখন LSB-এ ১ থাকবে, তাই অড।
}

আউটপুট ১

Enter a number: 40
even

আউটপুট ২

Enter a number: 89
odd
  1. C প্রোগ্রামিং-এ নাম্বার প্যাটার্ন প্রিন্ট করা (দুই ধরনের প্যাটার্ন)

  2. পাইথনে লুপ ছাড়া নাম্বার সিরিজ প্রিন্ট করা (রিকার্শন)

  3. পাইথন প্রোগ্রাম: লুপ ছাড়া নাম্বার সিরিজ প্রিন্ট করা

  4. Python-এ সংখ্যা বিজোড় নাকি জোড় চেক করা