忧花殇倾城泪 发表于 2020-7-23 17:25

python实现逢七拍腿游戏

记录学习python时遇到的题目:几个好朋友一起玩逢七拍腿游戏,即从1开始依次数数,当数到尾数是7的数或7的倍数时,则不报出该数,而是拍一下腿。现在编写程序,从1数到99,假设每个人都没有出错,计算一下共要拍多少次腿,通过编程求出结果。
控制台实现情况1:
控制台实现情况2(符合条件才可以进行下一步,否则循环到符合条件为止):
源码如下:print("这是一个三人规模的《逢\'7\'拍腿》的小游戏(即遇到7的倍数或个位为7的数就拍腿一次),接下来开始游戏。")
counta=1
while counta>0:
    ref=input("确认次数范围。请输入数值范围的最后一个整数,已默认由1开始:")
    ref=int(ref)
    if ref>0:
      counta=0
      countb=1
      while countb>0:
                num = input("确认结束时拍数。请输入你刚才设置区域内的一个整数,以其作为游戏结束时的数值:")
                num = int(num)
                if num in range(1, ref+1):
                  countb=0
                  countc=1
                  while countc>0:
                        role = input("请选择一个角色。第1位开始的a,第二位开始的b,第三位开始的c:")
                        if role in ("a","b","c"):
                            countc=0
                            sum=0
                            if role=="a":
                               numa=1
                               while numa<=num:
                                       if numa % 7 == 0 or numa % 10 == 7:
                                           sum += 1
                                       numa+=3
                            if role=="b":
                              numb=1
                              while numb<=num:
                                    if numb % 7 == 0 or numb % 10 == 7:
                                        sum+=1
                                    numb+=3
                            if role == "c":
                              numc = 1
                              while numc <= num:
                                    if numc % 7 == 0 or numc % 10 == 7:
                                        sum += 1
                                    numc += 3
                        else:
                            countc+=1
                else:
                  countb+=1

    else:
      counta+=1
print("你选择的角色%s最终拍腿次数为%d,游戏结束!" % (role, sum))

Gary-7 发表于 2020-7-23 17:49

这个好,一直在找

446917139 发表于 2020-7-23 19:28

有个别的思路,无论多少个人玩遍历两次就可以了,第一遍把满足条件的数取出,第二遍取模,模上总人数,对应的那个次数加一即可。

ysnsn 发表于 2020-7-23 18:27

没问题先存着,反正我不会写{:1_937:}

李辉! 发表于 2020-7-23 18:41

感谢楼主,学习了

rx_y2000 发表于 2020-7-23 18:41

学习中,。。。 先存着

五花肉啊 发表于 2020-7-23 18:44

学习了,感谢楼主

wilson_lws82 发表于 2020-7-23 19:27

刚刚开始学习

zucker 发表于 2020-7-24 09:57

不完善,如果输入的不是数字,没解决办法

hanaoran1234 发表于 2020-7-24 11:36

不错的小游戏,学习了

https://herder.cdn.bcebos.com/images/dot.gif
页: [1] 2
查看完整版本: python实现逢七拍腿游戏