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

C প্রোগ্রাম: সেমিকোলন ছাড়া ১ থেকে N পর্যন্ত সংখ্যা প্রিন্ট


এখানে আমরা একটি ট্রিকি সমাধান দেখব। আমরা সেমিকোলন ব্যবহার না করেই ১ থেকে N পর্যন্ত সংখ্যা প্রিন্ট করব।

এই সমস্যাটি দুটি পদ্ধতিতে সমাধান করা যায়। প্রথমটি ইটেরেটিভ পদ্ধতি, এবং দ্বিতীয়টি রিকার্সিভ পদ্ধতি।

পদ্ধতি ১

printf() ফাংশন স্ট্রিংয়ের দৈর্ঘ্য রিটার্ন করে যাতে এটি একটি নন-জিরো ভ্যালু। আমরা কন্ডিশনের সাথে লজিক্যাল AND করে রেজাল্ট প্রিন্ট করতে পারি। তারপর কাউন্টারের মান বাড়িয়ে দিই।

উদাহরণ কোড

#include <stdio.h>
#define N 20

int main(int num, char *argv[]) {
    while (num <= N && printf("%d ", num) && num++) {
        // while বডি খালি।
    }
}

আউটপুট

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

পদ্ধতি ২

দ্বিতীয় পদ্ধতিতে আমরা রিকার্সন ব্যবহার করে একই কাজ করব। main ফাংশন ببعض আর্গুমেন্টের সাথে কল হবে। এই main রিকার্সিভলি কল হবে।

উদাহরণ কোড

#include <stdio.h>
#define N 20

main(int val) {
    if (val <= N && printf("%d ", val) && main(val + 1)) {
        // বডি খালি
    }
}

আউটপুট

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
  1. সি++ প্রোগ্রাম: রিকারশন ছাড়া রুট-টু-লিফ (Root-to-Leaf) সব পাথ প্রিন্ট করা

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

  3. লুপ ছাড়া রেঞ্জের সংখ্যা প্রিন্ট করার পাইথন প্রোগ্রাম

  4. পাইথন প্রোগ্রাম: রিকার্শন ছাড়া লিস্ট ফ্ল্যাটেন করা