محمدرضا هلالی
3 سال پیش توسط محمدرضا هلالی مطرح شد
21 پاسخ

بازی حدس عدد

سلام من این پروژه مکتب خانه که در مورد بازی حدس عدد هست اصلا متوجه نمیشم اصلا چجوری باید برنامه جوری نوشت که کامپیوتر تشخیص بده عدد بزرگتره یا کوچکتر و این رو ادامه بده در ادامه تسک ها میزارم براتون
مراحل بازی شامل پنج تسک میشه
1) ابتدا کاربر یک عدد را در ذهن خود مشخص می کند و به کامپیوتر این عدد را نمی گوید (به عنوان ورودی به کامپیوتر عدد را نمی دهد)(عددی بین ۱ تا ۹۹)
2) برنامه یک عدد را حدس زده و چاپ می کند
3) عدد چاپ شده سه حالت را ایجاد می کند
4-یا از عددی که شما در ذهن خود دارید بزرگتر هست که شما با تایپ حرف k به برنامه می گویید که عدد در ذهن شما از عددی که برنامه چاپ کرده کوچکتر است و برنامه باید عدد دیگری را حدس زده و نمایش بدهد و ... (قابل ذکر است که در این حالت با تایپ k برنامه باید عدد کوچکتری از حدس قبلی خود حدس بزند تا بازی زودتر تمام شود)
5-و یا اینکه عدد چاپ شده از از عددی که شما در ذهن خود دارید کوچکتر هست که با تاپ حرف b به برنامه می گویید که عدد در ذهن شما از عددی که برنامه چاپ کرده بزرگتر است و برنامه باید عدد دیگری را حدس زده و نمایش بدهد و ... (قابل ذکر است که در این حالت با تایپ b برنامه باید عدد بزرگتری از حدس قبلی خود حدس بزند تا بازی زودتر تمام شود)
6- و یا اینکه عدد چاپ شده همان عددی است که در ذهن شما بود و با تایپ حرف d به برنامه می گویید که درست حدس زده و برنامه تمام می شود
برای نمونه کد می توانید از این لینک استفاده کنید اما باز من متوجه الگوریتم نشدم ، کد خودم رو دیگه نزاشتم که متن طولانی نشه ممنون میشم سورس کد اش بهم بگید یا اگه روش راحت تری هست مثلا استفاده از choice برای حدس زدن و این جور ترفندها :)


ثبت پرسش جدید
:)
تخصص : اندروید - تازه کار
@ERR 3 سال پیش آپدیت شد
0

کد @abdolrahman
را اگر از نخواهیم از مپ و فیلتر استفاده کنیم به صورت زیر مینویسیم:

import random
numbers   = list(range(1,100))
while True:
    guess = random.choice(numbers)
    print(guess)
    inp   = input('Enter k or b or d: ')
    if   inp == 'k':                              
       del numbers[numbers.index(guess):]       # del numbers >= guess
    elif inp == 'b':
         del numbers[:numbers.index(guess)+1]   # del numbers <= guess
    elif inp =='d':
        print('hooooo!! my guess is True!')
        break

mmj-sys
تخصص : داش متخصص چیه من پروفسورم .
@mmj.sys 3 سال پیش مطرح شد
-1

جمع کینین کداتونو بابا پادشاه امد !! 😄

start_num = 1
end_num = 99

while True:
      num_gu = int(start_num + end_num / 2)
      input_let = input(f"is {num_gu}")
      if input_let == "d":
         print("Yooo I Wine ... ")
         break
      elif input_let == "b" :
           start_num += 2
      elif input_let == "k":
           end_num = end_num - num_gu
      else:
         print("that not input .")
         break

زیادی سوال میپرسه ولی کار میکنه


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام