Python - 100以内の素数を取得
問題: 100以内の素数を取得する。
プログラム分析:素数(prime number)は無限に存在する。素数とは、1より大きい自然数で、1とその数自身以外に約数を持たない数のことをいう。例:2、3、5、7、11、13、17、19。
方法1:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
num=[];
i=2
for i in range(2,100):
j=2
for j in range(2,i):
if(i%j==0):
break
else:
num.append(i)
print(num)
方法2:
import math
def func_get_prime(n):
return filter(lambda x: not [x%i for i in range(2, int(math.sqrt(x))+1) if x%i ==0], range(2,n+1))
print func_get_prime(100)
出力結果:
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]その他の拡張
Python 100例