记录学习python时遇到的题目:几个好朋友一起玩逢七拍腿游戏,即从1开始依次数数,当数到尾数是7的数或7的倍数时,则不报出该数,而是拍一下腿。现在编写程序,从1数到99,假设每个人都没有出错,计算一下共要拍多少次腿,通过编程求出结果。
控制台实现情况1:
控制台实现情况2(符合条件才可以进行下一步,否则循环到符合条件为止):
源码如下:[Python] 纯文本查看 复制代码 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)) |