Python را ساده بیاموزیم۶

تصمیم گیری در Python

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

در تصمیم‌گیری‌ها، پایتون عبارت یا عباراتی را که «شرط» می‌نامیم بررسی کرده و ارزش منطقی (True یا False) آن‌ها را تعیین می‌کند. سپس در صورتی که مقدار عبارت True باشد قطعه کد خاصی را که برای آن شرط تعریف کرده‌اید اجرا می‌کند. در عموم زبان‌های برنامه‌نویسی من جمله پایتون ساختار شرطی را می‌توان به صورت زیر با فلوچارت نشان داد:

Null عبارتی قراردادی برای تخصیص مقدار صفر یا تهی به متغیر‌ها است. هنگامی که گفته می‌شود متغیری برابر Null است بدان معناست که متغیر خالی بوده و یا برابر صفر است.

همانطور که پیش‌تر گفته شد زبان پایتون هر مقدار غیر صفر و یا غیر Null را True و عبارات برابر صفر یا Null را False در نظر می‌گیرد.

ساختار ساده شرطی

یک عبارت شرطی ساده در زبان پایتون با ساختار زیر نوشته می‌شود:

if expression:
.    statements

عبارت expression عبارتی است که صحیح یا غلط (False / True) بودن آن بررسی می‌شود و statements دستوراتی هستند که در صورت True بودن عبارت expression اجرا خواهند شد. اگر که مقدار عبارت False باشد دستورات درون شرط اجرا نشده و برنامه به نخستین کد‌های پس از شرط پرش می‌کند.

فرض کنید می‌خواهیم برنامه‌ای بنویسیم که از کاربر عددی دریافت کرده و در صورتی که عدد وارد شده زوج باشد کلمه Even را نشان دهد. همانطور که پیش‌تر اشاره شده بود برای دریافت عدد از کاربر از تابع input() استفاده می‌شود. اگر بخواهیم این تابع عدد صحیحی از کاربر دریافت کنیم کافیست این تابع را درون تابع int() قرار دهیم:

x = int(input())

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

x % 2 == 0

بنابرین قطعه کد نهایی به شکل زیر خواهد بود:

ساختار شرط و نقیض آن

حال فرض کنید که بخواهیم برنامه در صورتی که عدد فرد بود عبارت Odd را نمایش دهد. بدین منظور از ساختار شرط و نقیض پایتون استفاده می‌کنیم. در این ساختار چنانچه شرط صحیح باشد statements1 اجرا شده و در صورتی که شرط غلط باشد statements2 اجرا می‌شود:

if expression:
.     statements1
else:
.    statements2

بدین ترتیب کد برنامه به صورت زیر در می‌آید:

ساختار شروط چندگانه

در برخی شرایط لازم است چندین شرط متفاوت را یکی پس از دیگری بررسی کنیم. به طور مثال فرض کنید می‌خواهیم برنامه‌ای بنویسیم که از کاربر کل مبلغ خرید مشتری را دریافت کرده و بر اساس مبلغ خرید مشتری درصد تخفیفی که می‌بایست به مشتری داده شود را نمایش دهد. با فرض آنکه برای خرید‌های زیر ۱۰۰۰ ده درصد تخفیف، بین ۱۰۰۰ تا ۲۰۰۰ بیست درصد تخفیف، برای خرید‌های بین ۲۰۰۰ تا ۳۰۰۰ سی درصد تخفیف و برای خرید‌های بالاتر پنجاه درصد تخفیف به مشتری داده شود. بدین منظور از دستور elif برای بررسی شرط‌های اضافی استفاده می‌کنیم:

if expression:
.     statements1
elif expression:
.      statements2
….

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

در قطعه کد بالا پایتون نخست شرط اول را بررسی می‌کند و در صورتی که x کمتر از ۱۰۰۰ باشد شرط به پایان می‌رسد و ادامه قطعه کد شرطی بررسی نمی‌شود. اما اگر x بیشتر از ۱۰۰۰ باشد پایتون به سراغ شرط دوم می‌رود و در صورتی که آن شرط درست باشد کد مربوط به آن را اجرا می‌کند و در غیر این صورت به بررسی شروط ادامه می‌دهد. بدین ترتیب بررسی شروط تا انتها ادامه می‌یابد و در صورتی که هیچ یک از شروط صحیح نباشد اگر قطعه کد else تعریف شده باشد اجرا می‌شود و در غیر این صورت بدون اجرای هیچ دستوری قطعه کد شرطی به اتمام می‌رسد.

اشتراك گذاری نوشته

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *