python程序作业,,急急急
用for循环或者while循环,输出2到200之内所有的素数。提示:方法一:1)将判断某个数是否是素数,实现成一个函数2)用循环,遍历2到200之内的每一个数,遍历时,调...
用for循环或者while循环,输出2到200之内所有的素数。提示:方法一: 1)将判断某个数是否是素数,实现成一个函数 2)用循环,遍历2到200之内的每一个数,遍历时,调用判断是否是素数的函数。 方法二:用二重循环来实现。
展开
4个回答
展开全部
def isPrime(num):
for i in range(2,num-1):
if(num%i==0):
return 0
return 1
def fun1():
for i in range(2,200):
if(isPrime(i)):
print("%d is prime number." %(i))
def fun2():
for i in range(2,200):
isp=0
for j in range(2,i-1):
if(i%j==0):
isp=1
if(isp==0):
print("%d is prime number." %(i))
if __name__=="__main__":
print("选择菜单进行操作:\n1、方法一\n2、方法二")
n=input()
if(n=='1'):
fun1()
if(n=='2'):
fun2()
用python3写的,如果你用的是2,部分语法要改改才行
展开全部
>>> filter(lambda x:all(x%i!=0 for i in range(2,x)),range(2,201))
[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, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199]
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
from math import sqrt
[x for x in range(2,200) if 0 not in [ x % i for i in range(2,int(sqrt(x))+1)]]
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import math
def is_prime(num):
if num < 2: return False
m = int(math.sqrt(num))
for i in range(2, m+1):
if not num % i: return False
return True
for i in range(2, 200):
if is_prime(i): print i
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询