![](/img/trans.png)
[英]How do I find the sum of prime numbers in a given range in Python 3.5?
[英]How else can I use the while-loop with the [included function] to sum only prime numbers from a given range?
我正在寻找可以超出未知变量n
。 k
是素数。 is_prime()
是一个函数,如果参数为素数则返回True
,否则返回False
。
我尝试过的是:
i = 1
total = 2
k = 0
while total <= n:
i += 1
if is_prime(i):
k += 1
total += i
随着n
的值变大,我的代码开始不起作用。 我希望k
仅在is_prime
返回True
时增加,并且total
将是运行总计,确保素数之和不超过n
。 如何使用while循环,for循环或if / elif / else来解决此问题,而又不使用sum()
类的其他函数呢?
您的代码似乎没有问题,假设is_prime
确实执行了预期的工作。 也许您的n
太大,并且寻找足够的质数来达到n花费的时间太长。
如果出现任何错误,您应该已经指定了它们,除此之外,我看不到代码有任何问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.