• 猜数字游戏(Python)


    一、猜数字游戏是一个古老的密码破译类、益智类小游戏,通常由两个人参与,一个人设置一个数字,一个人猜数字,当猜数字的人说出一个数字,由出数字的人告知是否猜中:若猜测的数字大于设置的数字,出数字的人提示“很遗憾,你猜大了”;若猜测的数字小于设置的数字时,出数字的人提示“很遗憾,你猜小了”;若猜数字的人在规定的次数内猜中设置的数字,出数字的人提示“恭喜,猜数成功”。

    本实例要求编写程序,实现上述规则的猜数字游戏,并限制猜数机会只有10次。游戏规则

    (1)程序应随机生成一个 1 至 100 之间的整数;

    (2)玩家有 10 次机会猜该数字;若猜中,则提示玩家获胜;若未猜中,则提示玩家猜 大了,还是猜小了,并且提示下一次猜数的范围;若 10 次机会用完仍未猜中,则提示玩家失败;

    (3)并且在代码中显示该游戏花费时间

    代码运行结果:

    1. 退出程序请输入0
    2. 请输入你猜的数字,你有十次机会:
    3. 请输入要猜的数字:23
    4. 小于随机数字
    5. 下一次请输入 23 ~ 100 之间的数字
    6. 请输入要猜的数字:55
    7. 大于随机数字
    8. 下一次请输入 23 ~ 55 之间的数字
    9. 请输入要猜的数字:40
    10. 小于随机数字
    11. 下一次请输入 40 ~ 55 之间的数字
    12. 请输入要猜的数字:48
    13. 恭喜你,猜对了!(~ ̄▽ ̄)~
    14. 正确数字是: 48
    15. 共用了 4 次机会
    16. 用时: 19
    1. import random
    2. import time
    3. startTime=time.time()
    4. #代码简介:随机猜数字上进行升级,
    5. # 参与者每次猜测都能提示其范围,并且可以随时退出,并输出使用次数,和游戏时间
    6. print("退出程序请输入0")
    7. random_number=random.randint(1,100)#生成一个随机数字
    8. print("请输入你猜的数字,你有十次机会:")
    9. list1=[1,1,100]
    10. list2=[100,100,1]
    11. t=0
    12. for i in range(10+t):
    13. d=eval(input("请输入要猜的数字:"))
    14. if d > 100: #如果是超出范围,重新输入
    15. print("超出数字范围,此次不会计入相应次数,请重新输入")
    16. continue
    17. if d!=round(d):
    18. print("请输入整数:") #判断是否是整数
    19. continue
    20. if d>random_number:
    21. print("大于随机数字")
    22. list1[1]=d
    23. print("下一次请输入",list2[2],"~",list1[1],"之间的数字")#第一次输入大于数字,下一次从1-d开始
    24. list1[2]=d
    25. elif dand d>0:
    26. print("小于随机数字")
    27. list2[1]=d
    28. print("下一次请输入",list2[1],"~",list1[2],"之间的数字")
    29. list2[2]=d
    30. elif d==random_number:
    31. print("恭喜你,猜对了!(~ ̄▽ ̄)~")
    32. break
    33. elif d==0:
    34. print("退出成功!")
    35. break
    36. endTime=time.time()
    37. if i==9:
    38. print("很抱歉,你没有猜对┭┮﹏┭┮,正确数字是:")
    39. print("正确数字是:",random_number)
    40. if d==0:
    41. print("共用了",i,"次机会")
    42. else:
    43. print("共用了",i+1,"次机会")
    44. useTime=int(endTime-startTime)
    45. print("用时:",useTime,"秒")

  • 相关阅读:
    怎么将ppt文件压缩变小一点?
    办公小技巧:word打印怎么做?
    【数值分析】Jacobi、Seidel和Sor迭代法求解线性方程组(附matlab代码)
    C++ - 多态的实现原理
    Worthington公司α-淀粉酶的历史和分子特征详解
    Android-Jetpack Compose的简单运用
    基于区块链的协作流程数据共享与访问控制
    防抖和节流
    单片机,0.07
    glog与pugi::xml使用方法
  • 原文地址:https://blog.csdn.net/greatau/article/details/133679858