شرط برنامهنویسی؛ تصمیمگیری هوشمندانه در کدنویسی
مفهوم شرط و انواع آن
در زندگی روزمره، هر روز با شرطها سر و کار داریم. مثلاً «اگر هوا بارانی باشد، چتر برمیدارم» یا «اگر نمرهٔ ریاضی بالاتر از هفده باشد، به پدر و مادرم خبر میدهم». در برنامهنویسی هم دقیقاً همین اتفاق میافتد. یک «عبارت شرطی» عبارتی است که میتواند فقط دو حالت داشته باشد: درست یا نادرست. به این مقدار، «مقدار بولی» میگوییم. برای مثال، عبارت «سن من از ده سال بیشتر است» یا درست است یا نادرست. برنامهنویس از این عبارتها برای تصمیمگیری در کد استفاده میکند.
شرطها معمولاً با استفاده از عملگرهای مقایسهای ساخته میشوند. مثلاً «بزرگتر»، «کوچکتر»، «مساوی» و «نامساوی». همچنین میتوانیم چند شرط را با «و» یا «یا» به هم متصل کنیم. مثلاً «اگر هوا سرد باشد و باران ببارد، من لباس گرم میپوشم». در برنامهنویسی، این ترکیبها به ما امکان میدهند که رفتارهای پیچیدهتری را برای برنامهمان طراحی کنیم.
| نوع عملگر | مثال در زندگی | نتیجه در برنامه |
|---|---|---|
| بزرگتر | نمرهٔ من از ۱۲ بیشتر است. | درست یا نادرست |
| کوچکتر | دمای هوا کمتر از ۲۵ درجه است. | درست یا نادرست |
| مساوی | تعداد غایبان کلاس برابر با ۳ نفر است. | درست یا نادرست |
| ترکیبی با «و» | هم باران میبارد و هم باد میوزد. | فقط در صورت درستی هر دو |
کاربرد شرط در برنامههای روزمرهٔ دانشآموزی
فرض کنید میخواهید یک بازی حدس عدد بسازید. برنامه باید عددی را از کاربر بگیرد و بررسی کند که آیا عدد درست است یا نه. اینجا از یک شرط استفاده میکنیم: «اگر عدد کاربر با عدد راز برابر است، پیام «تبریک» نشان بده، در غیر این صورت پیام «دوباره تلاش کن» را نشان بده». این یک مثال ساده از کاربرد شرط در برنامهنویسی است. یا مثلاً در یک برنامهٔ نمرهدهی، اگر نمرهٔ دانشآموز بیشتر از ۱۰ باشد، قبول است و اگر کمتر باشد، مردود. تمام این تصمیمگیریها با کمک عبارتهای شرطی انجام میشود.
یکی دیگر از کاربردهای جالب شرطها، در ساخت بازیهای کامپیوتری است. وقتی شخصیت بازی به یک مانع میرسد، برنامه بررسی میکند که «اگر شخصیت به مانع برخورد کرده باشد، جان خود را از دست بدهد». یا در یک برنامهٔ مدیریت زمان، اگر زمان باقیمانده کمتر از ۵ دقیقه باشد، برنامه به کاربر هشدار بدهد. همهٔ این رفتارها با یک عبارت شرطی ساده قابل پیادهسازی هستند.
پرسش و پاسخهای چالشی
پرسش: آیا شرط همیشه فقط یک عبارت ساده است؟
پاسخ: خیر. گاهی شرط میتواند ترکیبی از چند عبارت باشد. مثلاً «اگر نمرهٔ ریاضی بالاتر از ۱۴ باشد و نمرهٔ علوم نیز بالاتر از ۱۵ باشد، آنگاه دانشآموز در هر دو درس قبول است». در این حالت، نتیجهٔ نهایی فقط زمانی درست است که هر دو شرط درست باشند.
پرسش: اگر شرط نادرست باشد، چه اتفاقی میافتد؟
پاسخ: در بسیاری از زبانهای برنامهنویسی، میتوانیم برای حالت نادرست نیز یک دستور بنویسیم. یعنی به برنامه میگوییم «اگر شرط درست بود، کار اول را انجام بده و اگر نادرست بود، کار دوم را انجام بده». به این کار، «شرط با دو شاخه» میگویند. مثلاً در برنامهٔ قبلی، اگر عدد کاربر درست نبود، پیام خطا نشان داده میشود.
پرسش: آیا میتوان چند شرط را پشت سر هم قرار داد؟
پاسخ: بله. این کار «شرط تودرتو» نامیده میشود. مثلاً «اگر نمره بالای ۱۸ بود، بگو عالی، اگر بین ۱۵ و ۱۸ بود، بگو خوب، و اگر کمتر از ۱۵ بود، بگو نیاز به تلاش بیشتر». این روش به ما امکان میدهد که تصمیمگیریهای دقیقتری انجام دهیم.
خلاصهٔ آنچه خواندید: عبارت شرطی یکی از پایههای اصلی برنامهنویسی است که به برنامه اجازه میدهد بر اساس درستی یا نادرستی یک شرط، مسیر اجرای خود را انتخاب کند. شما با عملگرهای مقایسهای و ترکیب شرطها آشنا شدید و دیدید که چگونه میتوان از آنها در بازیها، برنامههای نمرهدهی و مدیریت زمان استفاده کرد. همچنین با چالشهایی مانند شرطهای ترکیبی و تودرتو روبرو شدید. به یاد داشته باشید که هر برنامهنویسی باید بتواند شرطها را به درستی بنویسد تا برنامهاش هوشمندانه و کارآمد عمل کند.