1 问题
两个素数之差为2的数称为“孪生数”,那么如何利用python求出100以内的所有素数呢?
2 方法
- 先用两次for循环求出100内的所有素数。
- 再用while循环求出它们之间的差为2.
代码清单 1
num=[] for i in range(2,101): flag=True for j in range(2,i): if i%j==0: flag=False break if flag: num.append(i) index=0 print(num) while index<len(num)-1: first=num[index] second=num[index 1] if second-first==2: print(f'{first}和{second}之间是孪生素数') index =1 |
---|
3 结语
针对此类求素数问题,提出for循环和while循环的方法,通过以上实验,证明该方法是有效的,本文的仍有方法不足或考虑不周的地方,未来可以继续研究更加高级简便的方法。