یاد بگیرید. بسازید.

۳. شرط‌ها؛ بودجه‌ات کافی است؟

با یک بودجه واقعی if و else، مقایسه و تورفتگی را بفهم؛ حالت مساوی را هم امتحان کن.

نکس‌کد؛ پایتون از اولین خط تا پروژه مدیریت هزینه

یک سؤال با دو جواب

بودجه‌ات ۱۵۰۰۰۰ تومان است و خریدت ۱۳۵۰۰۰ تومان. برنامه باید تصمیم بگیرد: پول کافی هست یا نه؟ عبارت total <= budget یک مقدار True یا False می‌دهد. if وقتی شرط درست باشد شاخه اول را اجرا می‌کند؛ else شاخه دیگر را.

نکس‌کد | آیا هزینه از بودجه کمتر یا مساوی است؟ بله: خرید ممکن است؛ خیر: کسری را نشان بده.
نکس‌کد | آیا هزینه از بودجه کمتر یا مساوی است؟ بله: خرید ممکن است؛ خیر: کسری را نشان بده.

هر دو شاخه را اجرا کن

خرید در محدوده بودجه

total را یک بار کمتر، یک بار برابر و یک بار بیشتر از budget بگذار.

main.pypython
budget = 150000
total = 135000

if total <= budget:
    print("بودجه کافی است")
    print(f"باقی‌مانده: {budget - total}")
else:
    print(f"کسری بودجه: {total - budget}")
یک راهنمایی می‌خواهم

بعد از شرط و else علامت : لازم است.

راهنمایی بیشتر

دستورهای داخل هر شاخه را چهار فاصله جلو ببر.

با مقدار اولیه دو خط می‌بینی: «بودجه کافی است» و باقی‌مانده ۱۵۰۰۰. با total برابر ۱۵۰۰۰۰، باقی‌مانده صفر است و هنوز بودجه کافی است. با ۱۶۰۰۰۰، فقط کسری ۱۰۰۰۰ چاپ می‌شود. فاصله ابتدای خط مشخص می‌کند کدام دستور داخل کدام شاخه است.

چند علامت ضروری

== برابری را می‌سنجد؛ = مقدار می‌دهد. != یعنی نابرابر، < کمتر و > بیشتر. با and می‌توانی دو شرط را با هم بخواهی: quantity > 0 and price >= 0. با elif یک حالت دیگر را پیش از else بررسی می‌کنی.

تمرین: اگر total دقیقاً برابر budget بود، «بودجه دقیقاً تمام شد» چاپ کن. راه‌حل: اول if total == budget:، بعد elif total < budget: و در پایان else. حالت مساوی را عمداً امتحان کن؛ تغییر یک علامت از <= به < رفتار مرزی برنامه را عوض می‌کند.

ادامه مسیر