我有以下代码需要2个输入:上限和下限。然后,计算上下限之间的质数。

例如:Upper = 100, lower = 0,因此素数为25。

lower = int(input("Enter lower range: "))
upper = int(input("Enter upper range: "))
total = 0
print("Prime numbers between",lower,"and",upper,"are:")

for num in range(lower,upper + 1):
   # prime numbers are greater than 1
   if num > 1:
       for i in range(2,num):
           if (num % i) == 0:
               break
       else:
           print(num)
           total = total + 1

print("total primes found", total)


我想计算素数的密度,所以0-100之间的密度为25%。我不是100%确定这实际上是密度还是​​频率。 (有人要求我找到密度,而不是频率。)

我在沿着(upper - lower) / total思路思考。显然这不是计算密度的正确表达式,但是我似乎无法理解如何做到这一点。

最佳答案

您需要在给定范围内的质数比例。你几乎是正确的。

total / float(upper - lower + 1)

关于python - 用Python计算密度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49885332/

10-12 16:50