نتیجه منطقی: درست یا غلط بودن یک شرط
نتیجه منطقی چیست و چگونه به دست میآید؟
هرگاه در برنامهنویسی دو چیز را با هم مقایسه میکنیم، مثلاً میپرسیم «آیا عدد 5 بزرگتر از 3 است؟»، پاسخ این پرسش یا «بله» (درست) است یا «خیر» (غلط). به این پاسخ «نتیجه منطقی» گفته میشود. در برنامهنویسی، به جای «بله» از مقدار «درست» و به جای «خیر» از مقدار «غلط» استفاده میکنیم. به این دو مقدار، «مقدارهای منطقی» میگوییم.
نتیجه منطقی از مقایسهی دو مقدار با یکدیگر به دست میآید. برای مثال، اگر سن کاربر را با عدد 18 مقایسه کنیم، نتیجه این مقایسه یا درست است (اگر سن از 18 بیشتر یا مساوی باشد) یا غلط (اگر سن کمتر از 18 باشد). این نتیجهی ساده، تعیین میکند که آیا برنامه به کاربر اجازهی ورود بدهد یا نه.
| نوع داده | مقدارهای ممکن | کاربرد اصلی |
|---|---|---|
| عددی | همهی اعداد | انجام محاسبات و عملیات ریاضی |
| نوشتهای | هر دنبالهای از حروف و اعداد | ذخیرهی نام، آدرس و متنها |
| منطقی | فقط درست یا غلط | تصمیمگیری در برنامه |
کاربردهای نتیجه منطقی در برنامهنویسی
نتیجه منطقی قلب تپندهی تصمیمگیری در برنامههاست. تمام دستورات شرطی مانند if، while و for بر اساس همین دو مقدار ساده کار میکنند. وقتی برنامهای مینویسید که چک میکند آیا کاربر رمز عبور را درست وارد کرده است یا نه، در پشت صحنه، یک مقایسه انجام میشود و نتیجهی آن یا «درست» است (پس اجازهی ورود داده میشود) یا «غلط» (پس پیام خطا نشان داده میشود).
یکی از کاربردهای جالب نتیجه منطقی در بازیهای رایانهای است. وقتی شما در یک بازی، یک کلید را فشار میدهید، برنامه بررسی میکند که آیا آن کلید، کلید درست برای حرکت دادن شخصیت است یا نه. نتیجهی این بررسی یک مقدار منطقی است: اگر درست باشد، شخصیت حرکت میکند و اگر غلط باشد، هیچ اتفاقی نمیافتد. حتی در برنامههای سادهی ماشینحساب، نتیجه منطقی تعیین میکند که آیا عدد وارد شده قابل تقسیم بر صفر است یا نه و از خطا جلوگیری میکند.
در وبسایتها نیز نتیجه منطقی نقش مهمی دارد. مثلاً وقتی یک فرم را پر میکنید، برنامه بررسی میکند که آیا همهی فیلدهای اجباری پر شدهاند یا نه. اگر نتیجه درست باشد، فرم ارسال میشود و اگر غلط باشد، پیام خطا نشان داده میشود. این تصمیمگیریهای ساده، همه بر پایهی دو مقدار «درست» و «غلط» استوار هستند.
پرسشهای کلیدی دربارهی نتیجه منطقی
آیا فقط مقایسهی اعداد نتیجه منطقی میدهد؟
خیر، هر نوع مقایسهای که بتواند به «درست» یا «غلط» ختم شود، نتیجهی منطقی دارد. مثلاً مقایسهی دو نوشته (آیا این دو کلمه با هم برابرند؟)، مقایسهی تاریخها (آیا امروز بعد از دیروز است؟)، یا حتی بررسی اینکه آیا یک عدد بین دو عدد دیگر قرار دارد یا نه، همه نتیجه منطقی تولید میکنند.
آیا نتیجه منطقی همیشه فقط در دستورات شرطی استفاده میشود؟
نه، نتیجه منطقی میتواند در یک متغیر ذخیره شود و بعداً در جای دیگری از برنامه استفاده شود. مثلاً میتوانید نتیجهی مقایسه را در یک متغیر به نام «وضعیت» ذخیره کنید و سپس در چند جای مختلف برنامه از آن استفاده کنید. این کار باعث میشود کد خواناتر و قابلاستفادهتر شود.
چرا گاهی نتیجهی منطقی آن چیزی نیست که انتظار داریم؟
این معمولاً به دلیل اشتباه در نوع دادهها رخ میدهد. مثلاً اگر یک عدد را با یک نوشته مقایسه کنید، ممکن است نتیجه درست نباشد. یا اگر از علامت تساوی اشتباه استفاده کنید (به جای == از = استفاده کنید)، برنامه به جای مقایسه، مقداردهی انجام میدهد و نتیجهی منطقی به دست نمیآید. دقت در نوع دادهها و عملگرهای مقایسهای بسیار مهم است.