求一定范围内的素数
求一个数字a是否为素数,有三种思考方式:
第一种,从数字2到数字a-1依次尝试,看是否能够整除;
第二种,从数字2到数字a/2依次尝试,看是否能够整除;
第三种,从数字2到数字sqrt(a)(根号a)依次尝试,看是否能够整除;
三种方式皆可,但是从计算量来看,第三种最佳:
#判断101-200之间有多少个素数,并输出所有素数
for i in range(100,200):
for im in range(2,int(math.sqrt(i+1))+1):
if not(i%im):
break
#print(im,i)
if im == int(math.sqrt(i)):
print(i)