[英]Finding Prime Number and the count of the Prime number - Python
我是Python的初学者,对此还是有点困惑。 我必须打印出质数,但是现在我一直想获取输出的质数,请帮忙。
import math
n= int (input("Enter an Integer: "))
for j in range(2, n+1):
if all(j%i!=0 for i in range(2,int(math.sqrt(j))+1)):
print (j)
count = 0
for j in range(2, n+1):
if j is True:
len(j)
print(str(len(j)))
我假设您的目标是打印0到n之间的所有质数(由用户输入)并计数。 您要做的就是在第一个循环之前声明“ count”,并在每次找到素数时将其递增。 该代码将如下所示:
import math
n= int (input("Enter an Integer: "))
count = 0
for j in range(2, n+1):
if all(j%i!=0 for i in range(2,int(math.sqrt(j))+1)):
print (j)
count = count + 1
print (" Number of prime numbers is : " , count)
您的代码的错误在于,在for j in range(2, n+1):
中的j的第二个循环for j in range(2, n+1):
,j为整数, if j is True:
始终为false,因为j不是“布尔”值。 因此, print(str(len(j)))
永远不会执行。
您要做的就是在代码中添加一个计数器。 请仔细阅读下面的代码,以了解如何实现。
import math
n= int (input("Enter an Integer: "))
count = 0
for j in range(2, n+1):
if all(j%i!=0 for i in range(2,int(math.sqrt(j))+1)):
print (j)
count = count + 1
print "Number of prime numbers between 1 and " + str(n) + " is " + str(count)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.