You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中while循环多条件设置错误,无法正确输出目标数值

问题分析与解决

你的代码错误在于while循环的条件逻辑颠倒了:
原循环要求i同时满足「被3整除」「被5整除」「小于n」才会执行循环体。当i=0时满足所有条件,执行打印后i变为1,此时1既不能被3整除也不能被5整除,循环条件不成立,直接终止,所以只输出了0。

修正方案1:调整条件位置

把「同时被3和5整除」的判断放到循环内部,while循环只保留i < n的条件:

n = eval(input("Number: "))
i = 0
while i < n:
    if i % 3 == 0 and i % 5 == 0:
        print(i, end=" ")
    i = i + 1

修正方案2:利用最小公倍数优化

因为同时被3和5整除的数是它们的最小公倍数15的倍数,所以可以直接让i每次增加15,减少循环次数:

n = eval(input("Number: "))
i = 0
while i < n:
    print(i, end=" ")
    i += 15

输入100时,两种方案都会输出:0 15 30 45 60 75 90

内容的提问来源于stack exchange,提问作者jayem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 20:14:52