编程题:显示指定范围的素数并求和
本题要求显示给定整数M和N区间内素数并对它们求和。
### 输入格式:
在一行输入两个正整数M和N(1≤M≤N≤1000)。
### 输出格式:
显示指定范围的素数,素数间空一格,每五个换一行。
单独一行输出素数的个数及素数的和。
### 输入样例:
在这里给出一组输入。例如:
in
4 30
### 输出样例:
在这里给出相应的输出。例如:
out
5 7 11 13 17
19 23 29
amount=8 sum=124
答案:若无答案欢迎评论
m,n = input().split()
m=int(m)
n=int(n)
if m==1: # 1不是素数
m = 2
prime = [] # 记录已知素数的列表
for x in range(2, n+1):
for k in prime:
if x%k == 0:
break
else:
prime.append(x) # 加入已知素数的列表
lst=[i for i in prime if i>=m and i<=n]
count=0
for i in range(len(lst)):
print(lst[i],end=" ")
count+=1
if count%5==0:
print()
if count!=0 and count%5!=0:
print()
print("amount={}".format(len(lst)),"sum={}".format(sum(lst)))
### 输入格式:
在一行输入两个正整数M和N(1≤M≤N≤1000)。
### 输出格式:
显示指定范围的素数,素数间空一格,每五个换一行。
单独一行输出素数的个数及素数的和。
### 输入样例:
在这里给出一组输入。例如:
in
4 30
### 输出样例:
在这里给出相应的输出。例如:
out
5 7 11 13 17
19 23 29
amount=8 sum=124
答案:若无答案欢迎评论
m,n = input().split()
m=int(m)
n=int(n)
if m==1: # 1不是素数
m = 2
prime = [] # 记录已知素数的列表
for x in range(2, n+1):
for k in prime:
if x%k == 0:
break
else:
prime.append(x) # 加入已知素数的列表
lst=[i for i in prime if i>=m and i<=n]
count=0
for i in range(len(lst)):
print(lst[i],end=" ")
count+=1
if count%5==0:
print()
if count!=0 and count%5!=0:
print()
print("amount={}".format(len(lst)),"sum={}".format(sum(lst)))