এই বিভাগে দেখব কিভাবে C বা C++-এ if এবং else ব্লক একসাথে এক্সিকিউট করা যায়। এটি কিছুটা ট্রিকি সমাধান।
সাধারণত if-else একের পর এক্সিকিউট হলে সেটা সাধারণ স্টেটমেন্ট এক্সিকিউশনের মতো। কিন্তু এখানে দেখব if-else উপস্থিত থাকাকaldas কিভাবে একে পর এক্সিকিউট করানো যায়।
উদাহরণ কোড
#include <iostream>
using namespace std;
int main() {
int x = 10;
if(x > 5) {
label_1: cout << "This is inside if statement" << endl;
goto label_2;
} else {
label_2: cout << "This is inside else statement" << endl;
goto label_1;
}
}আউটপুট
This is inside if statement This is inside else statement This is inside if statement This is inside else statement ... (অনন্ত লুপ)
এই প্রোগ্রাম অনন্ত লুপের মতো কাজ করে, কিন্তু if এবং else ব্লক একসাথে এক্সিকিউট হচ্ছে। প্রথম চেকের পর কন্ডিশন চেক আউটপুটে প্রভাব ফেলে না।
দ্রষ্টব্য: এখানে goto স্টেটমেন্ট ব্যবহার করে জোরপূর্বক কন্ট্রোল if ব্লক থেকে else এবং else থেকে if-এ পাঠানো হয়েছে। কিন্তু goto ব্যবহার করা ভাল অভ্যাস নয়। এটি প্রোগ্রামের কন্ট্রোল ফ্লো ট্রেস করা কঠিন করে দেয়।