A. python,随机产生40个100以内的数字,然后定义一个判断素数的函数,用该函数判断这40个数字并打印
fromrandomimport*
a=[randint(0,100)foriinrange(40)]#a是列表
defis_prime(a):
list_num=[]
foriina:
fornuminrange(2,i):
ifi%num==0:#余数为0时,该数就不是质数
break#break意思就是当该数不是质数时,就跳出整个循环
else:#循环迭代都完成后还没有找出能整除的情况,就可以判断该数i就是一个质数
list_num.append(i)
returnlist_num
print(is_prime(a))
B. 查找100以内的所有质数的python编程怎么写
质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数,如:2、3、5、7、11、13、17、19。
方法一:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
num=[];
i=2
for i in range(2,100):
j=2
for j in range(2,i):
if(i%j==0):
break
else:
num.append(i)
print(num)
方法二:
import mathdef
func_get_prime(n):
return filter(lambda x: not [x%i for i in range(2, int(math.sqrt(x))+1) if x%i ==0], range(2,n+1))
print func_get_prime(100)
输出结果为:
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
希望我的回答对你有帮助!