首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >程序添加相同的值以达到或超过给定的限值

程序添加相同的值以达到或超过给定的限值
EN

Stack Overflow用户
提问于 2022-02-04 21:29:56
回答 2查看 63关注 0票数 0

我想要创建一个计算机程序,从一个给定的值开始,并在一个循环中一次又一次地添加相同的和,直到总和达到或超过给定的极限为止。

例如:我从数字7开始,一次又一次地加3,直到总数达到或超过x(极限)。如果我的极限是23,程序将停止在25,并显示它超过了限制2。

EN

回答 2

Stack Overflow用户

发布于 2022-02-04 21:58:17

我们在Python中有两种循环:for-循环和while-循环。

通常我们使用while时,我们不知道我们要做多少次something...Here,因为您有一个条件,而且您事先也不知道要向7添加多少次值3才能达到极限,现在是使用while-loop的时候了。

代码语言:javascript
运行
复制
initial = 7
add_value = 3
limit = 23

while initial < limit:
    initial += add_value
    
print(initial)

在每次迭代中,都会计算条件(您在while关键字前面写的表达式)。如果它的计算结果为True,则会执行while块的主体,否则Python将跳出while-循环块,并在之后执行下一行。

我知道你特别要求循环,但我只想说这个问题可以用简单的数学运算来解决:

代码语言:javascript
运行
复制
initial = 7
add_value = 3
limit = 23

d, r = divmod(limit - initial, add_value)
if r == 0:
    print(initial + add_value * d)
else:
    print(initial + add_value * (d + 1))
票数 0
EN

Stack Overflow用户

发布于 2022-02-04 22:29:16

您可以使用while-循环实现这一点,如下所示:

代码语言:javascript
运行
复制
start = 7
end = 23
add = 3

while start <= end:
    start += add

if start == end:
    print(“Ended at end value”)
else:
    print(“Went beyond the limit by: ”, start-end)

在这里,在while-循环中,我们使用<=检查开始值是否达到或超过限制。如果情况并非如此,则将添加值添加到开始值中。当它到达或超过它时,循环结束。如果程序完全达到极限,它会打印“以值结尾”。否则,它打印的是“超出极限的:x”。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70993030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档