繁体   English   中英

使用python中的while循环求和所有可被y整除的0到x的数字

[英]Sum all numbers 0 to x that are divisible by y using while loop in python

我需要使用while循环(不使用for函数)编写脚本来汇总div1可除的0和x之间的所有数字。 这就是我所拥有的。

def sum_upto_divisible(x,div1):
    i=0
    while i<x:
        i+=1
        if i%div1==0:
            i+=i
    return(i)

如果x = 25且div1 = 5,答案应该是50。我当前的循环给我的答案是30。我知道该循环会一直加到5,然后加倍。 然后返回到i加1(现在为10),直到达到15。然后加倍15,并停止循环。 我需要添加5、10、15和20。如何解决现在的循环?

def sum_upto_divisible(x,div1):
    if div1 < 0 :
        div1 = -div1
    i=0
    s=0
    while i < x:
        s += i
        i += div1
    return s
def sum_upto_divisible(x, div1):
    return sum([num for num in x if num % div1 == 0])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM