مثال 19: پیشنهاد خرید ملک
بیاید یه مثال واقعی ببینیم. هدف این مثال اینه که با یه فرآیند ساده ی مزایده خونه آشنا بشیم. در این فرآیند شما در مزایده قیمت ارائه میدید و اگر قیمت پیشنهادیتون به حدی برسه که مناسب باشه صاحب خونه میشید! این مثال رو در ژوپیتر نوت بوک انجام بدید.
1- اولین قیمت بازار رو به کاربر اعلام کنید:
print('A one bedroom in the Bay Area is listed at $599,000')
2- از کاربر بخواهید که پیشنهاد خود را ارائه دهد:
print('Enter your first offer on the house.')
3- پیشنهاد کاربر را دریافت کنید و در یک متغیر به نام offer ذخیره کنید:
offer = abs(int(input()))
4- از کاربر بخواهید حداکثر مبلغی که حاضر به پرداخت آن است را وارد کند:
print('Enter your best offer on the house.')
5- مبلغ جدید را در متغیر best ذخیره کنید:
best = abs(int(input()))
6- از کاربر بخواهید که اعلام کند در هر مرحله از مزایده چقدر مایل به افزایش قیمت است:
print('How much more do you want to offer each time?')
7- مقدار افزایش را در یک متغیر به نام increment ذخیره کنید:
increment = abs(int(input()))
8- مقدار پیش فرض وضعیت پیشنهاد را برابر با False قرار دهید:
offer_accepted = False
9- یک حلقه ی while را که از offer شروع و به best ختم شود بنویسید:
while offer <= best:
10- فرض کنیم که اگر offer بیشتر از 650000 شود شما برنده ی مزایده خواهید بود:
if offer >= 650000:
offer_accepted = True
print('Your offer of', offer, 'has been accepted!')
break
11- برای هر پیشنهاد نیز در داخل حلقه و بعد از شرط وضعیت پیشنهاد را به کاربر نمایش میدهیم:
print('We\'re sorry, you\'re offer of', offer, 'has not been accepted.' )
12 - در نهایت offer را با increment جمع کرده و مقدار بدست آمده را offer جدید در نظر میگیریم:
offer += increment