Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何查找素数(Python)_Python_Primes - Fatal编程技术网

如何查找素数(Python)

如何查找素数(Python),python,primes,Python,Primes,我是python编程的初学者,遇到了一个基本问题: 将素数打印到给定的数字 例如,数字100之前的素数数量 为什么我的代码不起作用?或者我的逻辑有什么问题 def count_primenum: newnumber=0 对于数量中的x: 如果x%2==0: newnumber=newnumber+1 printnewnumber 计数100 测试一个数是否为素数的一个非常简单的方法,即计算速度较慢,就是简单地检查它是否可以被任何其他数除 def is_prime(n): # If n i

我是python编程的初学者,遇到了一个基本问题: 将素数打印到给定的数字

例如,数字100之前的素数数量

为什么我的代码不起作用?或者我的逻辑有什么问题

def count_primenum: newnumber=0 对于数量中的x: 如果x%2==0: newnumber=newnumber+1 printnewnumber 计数100
测试一个数是否为素数的一个非常简单的方法,即计算速度较慢,就是简单地检查它是否可以被任何其他数除

def is_prime(n):
    # If n is 0 or 1, it is not prime
    if n <= 1:
        return False
    # Check every number between 2 and n-1
    for i in range(2, n):
        # If n is divisible by i, then the remainder will be zero
        if n % i == 0:
            return False
    # Since n wasn't divisible by any other number, it must be prime
    return True

对于较大的num值,此方法将非常慢。要查看一些更快的检查数字素性的方法,您可以查看一下

def count_primenum:newnumber=0表示num中的x:if x%2==0:newnumber=newnumber+1 printnewnumber count_prime100如果您想更改您的问题,只需编辑它您的程序将尝试计算有多少个数字可被2整除,这些数字显然不是素数。它甚至无法实现这一点,因为它试图在一个数字上迭代循环。对于num中的x:with num=100将不起作用。。。你是说在rangenum中的x?
for i in range(num):
    if is_prime(i):
        print(i)
num = int(input("Enter a number: "))  

if num > 1:  
   for i in range(2,num):  
   if (num % i) == 0:  
       print(num,"is not a prime number")  
       print(i,"times",num//i,"is",num)  
       break  
   else:  
       print(num,"is a prime number")  

else:  
   print(num,"is not a prime number")