আসসালামু আলাইকুম
ধরি আমাদের একটি অংক দেয়া হয়েছে। “x কি y থেকে বড় নাকি ছোট? যদি x, y এর চেয়ে বড় হয় তবে আমরা লিখব, (x বড়), আর যদি y বড় হয় তবে আমরা লিখব (y বড়)।” এখানে আমাদের কে কন্ডিশন বা শর্ত দেয়া হয়েছে যে x, y এর থেকে বড় না ছোট। আর সেই শর্ত অনুযায়ী আমাদের কে বড় আর কে ছোট সেটা জানাতে বলা হয়েছে। এই ধরনের শর্ত সম্বলিত স্টেটমেন্ট গুলোকে বলা হবে কন্ডিশনাল লজিক।
সি প্রোগ্রামিং বাংলা টিউটোরিয়াল পার্ট ৭ এ আপানাদের স্বাগতম। এই পার্ট এ আমরা কন্ডিশনাল লজিক সম্পর্কে জানব।
ঝটপট সবাই কম্পিউটার এ কোড ব্লক ওপেন করে নিচের কোডটি তুলে ফেলি।
#include<stdio.h>
main()
{
int x = 50, y=10;
if(x>y)
{
printf(“X is greater than Y”);
}
else
{
printf(“X is not greater than Y\n”);
}
return 0;
}
কন্ডিশনাল লজিক প্রসেস করার জন্যে আমাদের কন্ডিশনাল স্টেটমেন্ট ব্যবহার করতে হবে। যার ফরম্যাট হচ্ছে
if(condition)
{
………………
}
else
{
………………
}
ডট চিহ্নিত স্থানে স্টাটমেন্ট লিখতে হবে। উপরের প্রোগ্রামটিতে আমরা x = 50, y=10; দুটি মান নিয়েছি। আমরা দেখতে চাই এদের মদ্ধে কে বড় আর ক ছোট। সেক্ষেত্রে আমাদের কন্ডিশনটি হবে (x>y) (x ইজ গ্রেটার দ্যান y)। তাহলে “x>y” হবে আমাদের কন্ডিশন। সুতরাং if(condition) এই condition স্থানে আমরা “x>y” লিখব।
তাহলে “If(x>y)” এই লাইনের অর্থ দাড়াচ্ছে যে , if(যদি) (x>y) হয় অর্থাৎ x, y এর থেকে বড় হয় তবে If এর স্টেটমেন্ট printf(“X is greater than Y”); এটি রান হবে। অর্থাৎ আমাদের আউটপুট আসবে (“X is greater than Y”। আর যদি x, y এর থেকে বড় না হয় তাহলে else(নতুবা/ না হয়) এর স্টেটমেন্ট printf(“X is not greater than Y\n”); রান হবে।
If(condition) //যদি শর্ত ঠিক থাকে, তাহলে এই স্টেটমেন্ট
{
………………
}
else //যদি শর্ত ঠিক না থাকে, তাহলে এই স্টেটমেন্ট
{
………………
}
এবারে নিচের কোডটি দেখা যাক। আমরা ধরে নেই x এ আমরা 50 রাখলাম অর্থাৎ x = 50। এবারে আমরা দেখতে চাই x পজিটিভ না নেগেটিভ সংখ্যা। এক্ষেত্রে আমাদের একের অধিক কন্ডিশন রয়েছে। কিভাবে? আচ্ছা, x এর মান ৫০, আমরা দেখে বলতে পারছি যে এটা পজটিভ। কারন x=৫০, ০ (শূন্য) থেকে বড়। যদি x= -৫০ হত, তাহলে বলতাম x নেগেটিভ, কারন -৫০ , ০(শূন্য) থেকে ছোট। আর যদি x=০ হয় তাহলে x নেগেটিভ বা পজিটিভ কোনটি ই নয়। খুব সহজ।
আমাদের এই কোডটিতে কন্ডিশন কিন্তু ২টা। তাহলে এখানে আমাদের প্রথমে থাকবে if(condition) , এই if(condition) এ প্রথম কন্ডিশন থাকবে। একদম শেষে থাকবে else, এই শুধু else এ কোন কন্ডিশ্ন থাকবেনা, আর মাঝখানে যদি এখাধিক কন্ডিশন থাকে তবে সেগুলো থাকবে if else(condition) এ। এমন আরো অনেক কন্ডিশন থাকতে পারে। সেক্ষেত্রে আমাদের if else(condition) সংখ্যাটা বেড়ে যাবে। তাহলে আমাদের ফরম্যাট টী হবে
If(condition) //যদি শর্ত ঠিক থাকে, তাহলে এই স্টেটমেন্ট
{
………………
}
if else(condition)
{
………………
}
else //যদি শর্ত ঠিক না থাকে, তাহলে এই স্টেটমেন্ট
{
………………
}
মনে রাখতে হবে আমরা জখনই কন্ডিশনাল লজিক নিয়ে কাজ করব আমাদের অবশ্যই if এর সাথে একটা else থাকতে হবে। আর else এ কোন কন্ডিশন থাকবেনা। বাই ডিফল্ট একটা ভ্যালু থাকবে।
নিচের কোডটী রান করালেই বুঝতে পারবেন। x এর বিভিন্ন মান পরিবর্তন করে কোডটী রান করুন। যেমন, x = 50, x = -100, x = 0, x = 500 ইত্যাদি।
#include<stdio.h>
main()
{
int x = 50;
if(x>0)
{
printf(“X is Positive”);
}
else if(x<0)
{
printf(“X is Negative\n”);
}
else
{
printf(“X is Equal to = 0\n”);
}
return 0;
}
আশা করি কন্ডিশনাল লজিক এর বেসিক ধারনা সম্পর্কে জানতে পারবেন।আজ এই পর্যন্ত।
ধন্যবাদ।