-
پنجشنبه, ۱۴ اسفند ۱۳۹۹، ۰۴:۲۸ ب.ظ
-
۲۳۷۲
سلام دوستان :)
امروز میخواستم برنامه بازی حدس عدد معکوس با پایتون رو بهتون نشون بدم.
توضیح بازی:
ابتدا کاربر یک عدد را در ذهن خود مشخص می کند و به کامپیوتر این عدد را نمی گوید (به عنوان ورودی به کامپیوتر عدد را نمی دهد)(عددی بین ۱ تا ۹۹)
برنامه را اجرا می کنیم
برنامه یک عدد را حدس زده و چاپ می کند
عدد چاپ شده سه حالت را ایجاد می کند
۱-یا از عددی که شما در ذهن خود دارید بزرگتر هست که شما با تایپ حرف k به برنامه می گویید که عدد در ذهن شما از عددی که برنامه چاپ کرده کوچکتر است و برنامه باید عدد دیگری را حدس زده و نمایش بدهد و ... (قابل ذکر است که در این حالت با تایپ k برنامه باید عدد کوچکتری از حدس قبلی خود حدس بزند تا بازی زودتر تمام شود)
۲-و یا اینکه عدد چاپ شده از از عددی که شما در ذهن خود دارید کوچکتر هست که با تاپ حرف b به برنامه می گویید که عدد در ذهن شما از عددی که برنامه چاپ کرده بزرگتر است و برنامه باید عدد دیگری را حدس زده و نمایش بدهد و ... (قابل ذکر است که در این حالت با تایپ b برنامه باید عدد بزرگتری از حدس قبلی خود حدس بزند تا بازی زودتر تمام شود)
۳- و یا اینکه عدد چاپ شده همان عددی است که در ذهن شما بود و با تایپ حرف d به برنامه می گویید که درست حدس زده و برنامه تمام می شود
خب بریم سراغ برنامه :)
کد:
import random
a = 1
b = 99
hads = random.randint(a, b)
print(hads)
javab = input()
while javab != 'd':
if javab == 'k':
b = hads
hads = random.randint(a, b)
print(hads)
javab = input()
if javab == 'b':
a = hads
hads = random.randint(a, b)
print(hads)
javab = input()
print('Wowwww!, I did it!')
خب خط اول ماژول random رو توی برنامه مون import کردیم
بعد دو تا متغییر برای سقف و کف عدد random مون تعریف کردی و کف رو برابر 1 و سقف رو برابر 99 قرار دادیم
بعدش متغییر hads تعریف کردیم و یک مقدار شانسی از 1 تا 99 داخلش گذاشتیم
بعد عدد شانسی مون رو نشون دادیم.
خب حالا یه متغییر javab داریم که یک ورودی از کاربر میگیره
کاربر سه تا ورودی میتونه بهمون بده پس گفتیم تا موقعی که javab مساوی نبود با d که معنیش اینه که کامپیوتر عدد رو درست حدس زده چک کنه ببینه اگر برابر بود با b کف رو برابر بده با حدس کاربر که بتونه عدد بزرگ تر از عدد قبلیش بده :)
و دوباره یک عدد حدس بزنه و به کاربر نشون بده و دوباره ازش ورودی بگیره و...
خالا اگر ورودی کاربر برابر k بود میاد سقف رو برابر میده با عدد کاربر تا عدد کوچیک تری از حدس قبلیش به کاربر بده :)
بعدش دوباره از کاربر ورودی میگیره و...
حالا وقتی از حلقه میاد بیرون یعنی ورودی کاربر برابر بوده با d پس چاپ میکنیم <<وای من برنده شدم!>> و برنامه تموم میشه.
امیدوارم براتون مفید بوده باشه D: