Python骰子赌博程序
问题描述:
我有这个骰子程序,滚动一对6双面模具3次。 你在银行开始500美元,并被要求下注并选择一个2到12之间的数字。如果你猜第一个掷骰子,你加倍你的投注并将它加到银行,第二掷骰你赢1次1次您的投注,第三轮赢得您的投注,否则您的投注将从银行中扣除。我只需要计算部分的帮助,我觉得很愚蠢。Python骰子赌博程序
def main():
bank = 500
while bank > 0:
print("You have $",bank,"in your account.")
bet = int(input("Enter your bet =>"))
guess = int(input("Choose a number between 2 and 12: "))
print("Your guess is",guess)
roll = 1
rolls = []
while roll < 4:
dice_pair = random.randint(1, 6) + random.randint(1, 6)
rolls.append(dice_pair)
print("Roll #",roll, "was",dice_pair)
if dice_pair == rolls[0]:
bank = bet * 2
elif dice_pair == rolls[1]:
bank = bet * 1.5
elif dice_pair == rolls[2]:
bank = bank + bet
else:
bank= bank - bet
roll += 1
答
有滚动列表和做喜欢dice_pair == rolls[0]
比较是没有意义的:这总是要真正在第一次循环。您应该检查dice_pair == guess
,根据当前值roll
调整银行,如果猜测正确(对该规则不太确定),则可能会结束循环。
此外,对于第一次和第二次滚动if语句,您忘记了添加银行的值。所以,假设我在银行里有500美元,我最好是10美元,猜测是4美元,而且我恰好在第一卷上得到了正确的结果。您目前的代码将导致我的银行余额仅为20美元!您可能想要考虑使用+ =和 - =运算符来使这更容易。 – CodeSurgeon