2010-05-04(火)
素数を数える
30分プログラム、その762。
またもいいネタがないので、素数を数えました。エラトステネスのふるいを使うのも芸がないので、フェルマーテストにしました。
使い方
$ python prime.py 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
ソースコード
#! /usr/bin/python # -*- mode:python; coding:utf-8 -*- from random import uniform def gcd(n, m): if m == 0: return n else: return gcd(m, n % m) def maybePrime(n): a = int(uniform(2,n-1)) if gcd(n, a) != 1: return False else: return a**(n-1) % n == 1 for n in xrange(2,100): if maybePrime(n) and maybePrime(n) and maybePrime(n): print n
参考
コメントを書く
トラックバック - http://d.hatena.ne.jp/mzp/20100504/prime
リンク元
- 15 http://reader.livedoor.com/reader/
- 12 http://wiki.python.org/moin/JapaneseLanguage
- 6 http://ezsch.ezweb.ne.jp/search/?sr=0101&query=文字列が反転するプログラム
- 6 http://www.google.co.jp/m?ie=Shift_JIS&q=素数を数える+プログラム
- 4 http://ezsch.ezweb.ne.jp/search/?query=素数を数える+Wikipedia&ct=&pd=1&sr=0000
- 4 http://www.google.co.jp/search?hl=ja&safe=off&client=firefox-a&hs=DYR&rls=org.mozilla:ja:official&q=Frisby+peg&lr=&aq=f&aqi=&aql=&oq=&gs_rfai=
- 4 http://www.google.co.jp/url?sa=t&rct=j&q=素数を数えるプログラム&source=web&cd=3&sqi=2&ved=0CDIQFjAC&url=http://d.hatena.ne.jp/mzp/20100504/prime&ei=9YanTtjRF-fymAXo7I
- 3 http://blogsearch.google.co.jp/blogsearch?hl=en&ie=UTF-8&q=twitterircgateway&btnG=Search+Blogs
- 3 http://ezsch.ezweb.ne.jp/search/?sr=0101&query=モンテカルロ法 円周率 プログラム
- 3 http://ezsch.ezweb.ne.jp/search/?sr=0101&query=数字の積
