python 3 5的值_(Python3.3)无法理解为什么值达到5时函数会创建无限循环

我正在开发一个模拟自动售货机的程序。对于某些人来说,我的这部分代码创建了一个无限循环,我不太明白为什么。我在python tutor中运行了它,看看我的问题出在哪里了,似乎当我的可变price_remaining=5时,它有时不会通过elif语句。我不太清楚是什么会以这种或那种方式触发它。我将把我输入的内容复制并粘贴到python-tutor中,希望有人能基于这个解释。

编辑:我刚刚又检查了python tutor,似乎只有当我有一个

以剩余价格结束。例如2.05、0.05、1.15等price_remaining = 2.55

price_remaining = price_remaining * 100

q_stock = 25

q_returned = -0

d_stock = 25

d_returned = 0

n_stock = 25

n_returned = 0

while price_remaining > 0:

if price_remaining >=25 and q_stock > 0:

price_remaining = price_remaining - 25

q_stock = q_stock - 1

q_returned = q_returned + 1

elif price_remaining >=10 and d_stock > 0:

price_remaining = price_remaining - 10

d_stock = d_stock - 1

d_returned = d_returned + 1

elif price_remaining >=5 and n_stock > 0:

price_remaining = price_remaining -5

n_stock = n_stock - 1

n_returned = n_returned + 1

print( q_returned)

print( d_returned)

print( n_returned

)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值