1.题目要求
- 有两个骰子,都是1-6.
- 玩游戏要有金币,不能玩游戏
- 玩游戏赠金币一枚,充值获取金币
- 只能充值10元的倍数,每十元换20个金币
- 玩游戏消耗金币5个金币
- 猜大小:猜对 ,奖励金币2枚 ;猜错,没有奖励。
- 超过6点以上认为是大,否则是小
- 游戏结束:1.主动退出 2.没有金币退出
- 只要退出则打印金币数,共玩了几局
2.代码
coins = 0 # 金币数
count = 0 # 游戏局数
import random # 生成随机数
if coins < 5: # 当金币不足5个时
print('金币不足请充值!')
while True: #循环
money = int(input('请输入充值金额:'))
if money % 10 == 0: # 判断是否是10的倍数
coins += money // 10 * 20 # 计算金币数
print('充值成功!当前金币有%d个' % coins)
print('————————游戏开始啦!!!————————')
answer = input('是否开始游戏(yes or no)? ') # 可主动选择是否开始游戏
while coins > 5 and answer == 'yes':
coins -= 5 # 玩一局扣除5金币
coins += 1 # 玩一局赠送1金币
ran1 = random.randint(1,6) # 设置随机数1至6
ran2 = random.randint(1,6)
guess = input('掷骰子完毕,请猜大小:') # 输入猜的大小
if guess == '大' and ran1 + ran2 > 6 or guess == '小' and ran1 + ran2 <= 6:
print('猜对啦!!!')
coins += 2 # 赢一局游戏奖励2个金币
else:
print('猜错啦~好可惜~')
count += 1 # 游戏局数加1
answer = input('当前剩余金币%d个,是否继续游戏(yes or no)?' % coins) # 主动选择是否继续游戏
print('已玩游戏%d局,账号所剩余金币%d个' % (count , coins) ) # 退出游戏前打印局数和金币数
break
else:
print('不是10的倍数,充值失败!')
3.运行结果
4.总结
根据题目设计大致思路框架,首先思考最外层条件判断:金币数量是否足够一局游戏;若需要充值,则来到第二个条件判断:输入金额是否是10的倍数。当充值成功后,就可以进行开始游戏。
逐步熟练循环语句while、if语句等等。
如有错误或者可以精进的地方,劳烦指出,谢谢大家。