خانه
گاما

شرط و تصمیم‌گیری الگوریتمی: بررسی وضعیت منطقی برای انتخاب مسیر مناسب در اجرای الگوریتم.

دسته بندی:کپسول آموزشی
بروزرسانی شده در:1405/04/10
تعداد بازدید75
شرط و تصمیم‌گیری الگوریتمی: بررسی وضعیت منطقی برای انتخاب مسیر مناسب در اجرای الگوریتم.

شرط و تصمیم‌گیری الگوریتمی

بررسی وضعیت منطقی برای انتخاب مسیر مناسب در اجرای الگوریتم
چکیده: در این مقاله با مفهوم شرط در الگوریتم آشنا می‌شوید. شرط‌ها مانند چهارراه‌هایی هستند که به الگوریتم می‌گویند کدام مسیر را انتخاب کند. کلیدواژه‌های اصلی عبارتند از: شرطتصمیم‌گیریدرست یا نادرستانتخاب مسیر می‌باشند.

شرط چیست و چگونه کار می‌کند؟

در زندگی روزمره، مدام در حال تصمیم‌گیری هستیم. مثلاً اگر هوا بارانی باشد، چتر برمی‌داریم و اگر نباشد، چتر نمی‌بریم. در الگوریتم‌ها نیز همین اتفاق می‌افتد. به این «اگر»ها، شرط می‌گوییم. شرط، یک پرسش است که پاسخ آن فقط «درست» یا «نادرست» است. بر اساس همین پاسخ، الگوریتم تصمیم می‌گیرد که کدام دستور بعدی را اجرا کند.

برای درک بهتر، به یک بازی فکری توجه کنید: فرض کنید می‌خواهید به دوست خود پیام دهید که امروز بعد از مدرسه به پارک می‌روید یا نه. الگوریتم این تصمیم را می‌توانید به این صورت بنویسید: «اگر ساعت به سه رسیده باشد و تکالیف من انجام شده باشد، به پارک می‌روم؛ در غیر این صورت به خانه می‌روم.» در اینجا دو شرط داریم که باید هر دو درست باشند تا نتیجه «رفتن به پارک» حاصل شود.

نوع شرط توضیح مثال برای دانش‌آموز
ساده فقط یک بررسی انجام می‌شود اگر نمره‌ی ریاضی بالاتر از ۱۲ باشد، قبولی
ترکیبی با «و» همه‌ی شرط‌ها باید درست باشند اگر هوا آفتابی باشد و دمای هوا بالای ۲۰ درجه باشد، به استخر می‌رویم
ترکیبی با «یا» حداقل یکی از شرط‌ها درست باشد اگر کتابخانه باز باشد یا فروشگاه کتاب تخفیف داشته باشد، کتاب می‌خرم

کاربرد شرط در زندگی روزمرهٔ دانش‌آموزی

شاید با خود بگویید این شرط‌ها فقط برای کامپیوترها هستند، اما نه! هر روز از آن‌ها استفاده می‌کنید. فرض کنید صبح که از خواب بیدار می‌شوید، الگوریتمی در ذهن خود دارید: «اگر زنگ مدرسه دقایقی دیگر به صدا درآید، سریع لباس می‌پوشم و اگر نه، می‌توانم کمی بیشتر در رختخواب بمانم.» یا هنگام انتخاب رشته‌ی تحصیلی: «اگر به ریاضی علاقه دارم و نمرات خوبی دارم، رشته‌ی ریاضی را انتخاب می‌کنم و در غیر این‌صورت به رشته‌ی دیگر فکر می‌کنم.»

حتی در بازی‌های رایانه‌ای نیز شرط‌ها نقش اساسی دارند. وقتی در یک بازی، جان کاراکتر شما به صفر می‌رسد، بازی بررسی می‌کند که «اگر جان بازیکن صفر باشد، بازی تمام شود؛ در غیر این صورت ادامه پیدا کند.» این یعنی الگوریتم بازی هر لحظه دارد شرط‌ها را چک می‌کند تا تصمیم درست را بگیرد.

نکته: برای اینکه یک شرط به درستی کار کند، باید عبارت آن را دقیق و بدون ابهام بنویسیم. مثلاً به جای «اگر هوا خوب بود» بهتر است بگوییم «اگر دمای هوا بالای ۱۵ درجه و باران نمی‌بارید».

چالش‌های مفهومی در شرط‌ها

پرسش ۱: اگر چند شرط پشت سر هم داشته باشیم، ترتیب آن‌ها مهم است؟

پاسخ: بله، در بسیاری از موارد ترتیب شرط‌ها بسیار مهم است. مثلاً در یک الگوریتم ورود به سایت، ابتدا باید بررسی شود که نام کاربری درست است، سپس رمز عبور. اگر ترتیب را عوض کنید، ممکن است فردی با رمز اشتباه هم وارد شود!

پرسش ۲: آیا همیشه باید شرط را بنویسیم یا گاهی می‌توان بدون شرط تصمیم گرفت؟

پاسخ: در الگوریتم‌هایی که کارهای تکراری و ساده انجام می‌دهند، شاید نیازی به شرط نباشد. اما بیشتر کارهای مفید و هوشمندانه نیاز به شرط دارند. مثلاً ماشین‌حساب بدون شرط فقط جمع و تفریق ساده انجام می‌دهد، اما یک الگوریتم تشخیص چهره پر از شرط‌های گوناگون است.

پرسش ۳: اگر شرطی مبهم و نامشخص بنویسیم، چه اتفاقی می‌افتد؟

پاسخ: الگوریتم ممکن است اشتباه کند یا اصلاً نتواند تصمیم بگیرد. مانند این است که از دوست خود بپرسید «آیا امروز کار داری؟» بدون اینکه مشخص کنید کار یعنی چه. او نمی‌داند منظور شما تکلیف مدرسه است یا کارهای خانه. بنابراین همیشه شرط را شفاف بنویسید.

مرور سریع مطالب

شرط‌ها قلب تپندهٔ الگوریتم‌ها هستند. با کمک آن‌ها می‌توانیم تصمیم‌گیری را به رایانه‌ها بسپاریم. شرط‌ها یا ساده هستند یا ترکیبی و پاسخ آن‌ها فقط درست یا نادرست است. برای نوشتن یک شرط خوب، باید آن را دقیق و بدون ابهام بیان کنیم. به یاد داشته باشید که در زندگی روزمره نیز مدام در حال استفاده از شرط‌ها هستید؛ از انتخاب لباس تا تصمیم‌گیری برای درس خواندن. پس با شناخت بهتر شرط‌ها، هم الگوریتم‌های بهتری می‌نویسید و هم تصمیم‌گیری‌های هوشمندانه‌تری در زندگی خواهید داشت.

نقاط کمک‌رسم: نقاط دقیقی مانند انتها، میانه، تقاطع، مرکز، عمود و مماس برای ترسیم صحیح.
کپسول آموزشی

نقاط کمک‌رسم: نقاط دقیقی مانند انتها، میانه، تقاطع، مرکز، عمود و مماس برای ترسیم صحیح.

اندازه‌گذاری نقشه: نمایش مقدار طول، قطر، شعاع یا زاویه روی نقشه با خطوط و ابزارهای اندازه‌گذاری.
کپسول آموزشی

اندازه‌گذاری نقشه: نمایش مقدار طول، قطر، شعاع یا زاویه روی نقشه با خطوط و ابزارهای اندازه‌گذاری.

نقشه پروژه طراحی و ساخت: نقشه فنی اجزای پروژه برای راهنمایی ساخت، اجرا و ارزیابی.
کپسول آموزشی

نقشه پروژه طراحی و ساخت: نقشه فنی اجزای پروژه برای راهنمایی ساخت، اجرا و ارزیابی.

نرم‌افزار ترسیم: برنامه رایانه‌ای برای ایجاد، ویرایش، اصلاح و اندازه‌گذاری نقشه‌ها و شکل‌ها.
کپسول آموزشی

نرم‌افزار ترسیم: برنامه رایانه‌ای برای ایجاد، ویرایش، اصلاح و اندازه‌گذاری نقشه‌ها و شکل‌ها.

ترسیم دوبعدی: رسم شکل‌ها روی صفحه با دو بعد طول و عرض.
کپسول آموزشی

ترسیم دوبعدی: رسم شکل‌ها روی صفحه با دو بعد طول و عرض.

ترسیم سه‌بعدی: نمایش رایانه‌ای اجسام با طول، عرض و ارتفاع.
کپسول آموزشی

ترسیم سه‌بعدی: نمایش رایانه‌ای اجسام با طول، عرض و ارتفاع.

محیط نرم‌افزار ترسیم: فضای کاری نرم‌افزار شامل ابزارها، نوارها و بخش‌های لازم برای ترسیم.
کپسول آموزشی

محیط نرم‌افزار ترسیم: فضای کاری نرم‌افزار شامل ابزارها، نوارها و بخش‌های لازم برای ترسیم.

ابزارهای ترسیم پایه: فرمان‌هایی مانند خط، دایره و کمان برای ایجاد شکل‌های اصلی.
کپسول آموزشی

ابزارهای ترسیم پایه: فرمان‌هایی مانند خط، دایره و کمان برای ایجاد شکل‌های اصلی.

خط فرمان: بخش ورود دستورهای متنی یا عددی برای اجرای دقیق فرمان‌های ترسیم.
کپسول آموزشی

خط فرمان: بخش ورود دستورهای متنی یا عددی برای اجرای دقیق فرمان‌های ترسیم.

ابزارهای ویرایش نقشه: فرمان‌هایی مانند قرینه‌سازی، آرایه، دوران، برش، امتداد و مقیاس برای اصلاح شکل‌ها.
کپسول آموزشی

ابزارهای ویرایش نقشه: فرمان‌هایی مانند قرینه‌سازی، آرایه، دوران، برش، امتداد و مقیاس برای اصلاح شکل‌ها.

ابزار تقارن: فرمان ایجاد تصویر قرینه از یک شکل نسبت به محور مشخص.
کپسول آموزشی

ابزار تقارن: فرمان ایجاد تصویر قرینه از یک شکل نسبت به محور مشخص.

ابزار آرایه: فرمان تکرار منظم یک شکل در الگوی انتقالی یا دورانی.
کپسول آموزشی

ابزار آرایه: فرمان تکرار منظم یک شکل در الگوی انتقالی یا دورانی.