是什么导致我的while循环持续时间延长到12分钟?

时间:2019-02-20 03:01:20

标签: python for-loop while-loop

我是python的新手: 我正在做一个项目: 咖啡因吸收到体内后,消除了13% 从身体每小时。假设一个人喝了一杯8盎司的冲泡咖啡,其中包含130毫克咖啡因,并且咖啡因会立即被人体吸收。

我正在为以下程序编写程序: 。 (b)该人喝咖啡24小时后体内的咖啡因含量。

我的代码是:

hour = 24
in_body=100
caffeine = 130
while caffeine < 130:
    in_body -= .13*in_body
    hour -= 1

为什么没有任何输出要花这么长时间?

2 个答案:

答案 0 :(得分:0)

while循环条件应为while hour > 0:。这是因为您希望循环运行到24小时为止。您已经通过执行hour使hour -= 1递减来执行此操作。因此,最终,经过24次迭代,您的hour变量将等于0,因此,您希望循环立即停止(终止)!

希望这对您有所帮助!祝你好运!

答案 1 :(得分:-1)

您永远不会进入while循环,因为变量caffeine永远不会是>= 130

尝试:

hour = 24
in_body=130
while hour > 0:
    in_body -= .13*in_body
    hour -= 1

不需要额外的变量,因为130mg咖啡因会立即吸收到体内。您以130mg开始,并且每小时(从24小时到1小时),它会损失体内当前量的13%。

要添加输出,请将print()语句放入... 循环后的print(in_body)将在24小时后返回咖啡因量