马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 不二如是 于 2022-8-29 17:47 编辑
一星答案:
from math import sqrt
from sys import stdout
h = 0
leap = 1
#利用sqrt()缩小范围
for m in range(99,1001):
k = int(sqrt(m + 1))
for i in range(2,k + 1):
if m % i == 0:
leap = 0
break
if leap == 1:
print('%-4d' % m)
h += 1
if h % 10 == 0:
print('')
leap = 1
print('总计: %d' % h)
list1=[]
list2=[]
count=0
for i in range(99,1001):
for j in range(2,int(i**0.5)+1):
if i%j==0:
list1.append(i)
for m in range(99,1001):
list2.append(m)
for a in list2:
if a not in list1:
count+=1
print(a,end=" ")
print('总计%d个素数' % count)
二星答案:
def prime(s, e):
flag = 1
count = 0
for i in range(s, e, 2):
for j in range(2, int(i ** 0.5)+1):
if i % j == 0:
flag = 0
break
if flag:
print('{:>{}}'.format(i, len(str(e))), end=' ')
count += 1
if count == 10:
print()
count = 0
else:
flag = 1
if __name__ == '__main__':
prime(99, 1001)
print()
三星答案:
基础语法:
算法讲解:
|