令P~i~表示第i个素数。现任给两个正整数M <= N <= 10^4^,请输出P~M~到P~N~的所有素数。
输入格式:
输入在一行中给出M和N,其间以空格分隔。
输出格式:
输出从P~M~到P~N~的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。
输入样例:
5 27
输出样例:
11 13 17 19 23 29 31 37 41 43
47 53 59 61 67 71 73 79 83 89
97 101 103
分析:找出位置为P~M~到P~N~的所有素数,使用一个计数变量控制输出格式
import math
def isprime(n):
if n%2==0 and n!=2:
return 0
if n%3==0 and n!=3:
return 0
i=3
while i<=math.sqrt(n):
if n%i==0:
return 0
i+=2
return 1
n=input().split()
a,b=int(n[0]),int(n[1])
count=0
c=0
j=2
while count<b:
if isprime(j)==1:
count+=1
if count>=a:
c+=1
if count==b:
print(j,end='')
elif c%10==0:
print(j)
else:
print(j,end=' ')
j+=1