本文将探讨如何使用while循环来求解最小的100个素数。
一、素数的定义
素数又称质数,是指除了1和本身以外没有其他因子的自然数。例如:2、3、5、7、11、13、17、19、23等均为素数。
二、while循环求解素数
在Python中,使用while循环判断一个数是否为素数,可以用以下代码:
def is_prime(num):
"""
判断一个数是否为素数
"""
if num < 2:
return False
i = 2
while i*i <= num:
if num % i == 0:
return False
i += 1
return True
在这个函数中,我们首先判断传入的数是否小于2,如果小于2,则不是素数;如果大于等于2,则从2开始循环判断该数是否为素数,循环条件为i*i<=num,这是由于一个数的因子一定是小于或者等于该数平方根的数,所以只需要判断小于或等于其平方根的数即可。如果该数有因子,则不是素数,返回False,否则循环继续,最后返回True。
三、求解最小的100个素数
有了判断一个数是否是素数的函数,我们就可以使用while循环来求解最小的100个素数了:
def get_prime():
"""
求解最小的100个素数
"""
primes = []
num = 2
while len(primes) < 100:
if is_prime(num):
primes.append(num)
num += 1
return primes
在这个函数中,我们首先定义一个空列表primes,用于存储素数。然后从数值2开始循环,判断该数是否为素数,如果是素数,则将其加入到primes列表中;如果不是素数,则继续循环。当primes列表长度达到100以后,循环结束,返回primes列表即可。
四、完整代码示例
下面是完整的代码示例:
def is_prime(num):
"""
判断一个数是否为素数
"""
if num < 2:
return False
i = 2
while i*i <= num:
if num % i == 0:
return False
i += 1
return True
def get_prime():
"""
求解最小的100个素数
"""
primes = []
num = 2
while len(primes) < 100:
if is_prime(num):
primes.append(num)
num += 1
return primes
if __name__ == '__main__':
primes = get_prime()
print(primes)
五、总结
本文介绍了如何使用while循环来判断素数,并且使用while循环求解最小的100个素数。读者可以结合代码,加深对Python的while循环及判断素数的思路。
原创文章,作者:PAESF,如若转载,请注明出处:https://www.506064.com/n/373516.html
微信扫一扫
支付宝扫一扫