یک سؤال با دو جواب
بودجهات ۱۵۰۰۰۰ تومان است و خریدت ۱۳۵۰۰۰ تومان. برنامه باید تصمیم بگیرد: پول کافی هست یا نه؟ عبارت total <= budget یک مقدار True یا False میدهد. if وقتی شرط درست باشد شاخه اول را اجرا میکند؛ else شاخه دیگر را.
هر دو شاخه را اجرا کن
خرید در محدوده بودجه
total را یک بار کمتر، یک بار برابر و یک بار بیشتر از budget بگذار.
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. حالت مساوی را عمداً امتحان کن؛ تغییر یک علامت از <= به < رفتار مرزی برنامه را عوض میکند.
