2008 5月の記事

素因数分解 »

 特に利用目的はないけれど、任意の数字を因数分解する、ちょっとしたお遊びプログラム。

 数学の世界では、素数の数列を記述する有効な方程式はまだ発見されていない。だから大きな桁の素数を掛け合わせた場合、その結果だけを用いて再び素因数分解するのは、たとえコンピュータといえど膨大な計算時間を必要とする。現在の暗号化技術はこれを利用しているので、もし万が一、素数列を記述する方程式が発見され、悪用されたら、世界中に大激震が走ることになる。

 まあ、そんな大それた話は別としても、7桁や8桁の数字でも、手計算では結構大変だ。たとえば、次の5つの数字が約数を持つかどうか、手計算で(電卓くらい使ってもいいけど)調べてみてください。

  100000007、100000037、100639681、100639699、100639703

 実はこれらはどれも素数である(はずだ。……間違ってたら教えてください)。

 あるいはこんなのはどうか? 1010101 とか 101010101 といった数字。
 これはちゃんと因数分解できるけど、やっぱり手計算だと面倒くさい。結果は以下のとおり。

  1010101 = 73 x 101 x 137
  101010101 = 41 x 271 x 9091

 こんな約数になるなんて、まったく予測できないでしょう? 他にも、ぼくが面白いと思った素因数分解を、以下にあげておく。

  11111 = 41 x 271
  10101 = 3 x 7 x 13 x 37
  111111 = 11 x 10101 = 3 x 7 x 11 x 13 x 37
  1111111 = 239 x 4649
  11111111 = 11 x 1010101 = 11 x 73 x 101 x 137
  111111111 = 3 x 3 x 37 x 333667
  1111111111 = 11 x 101010101 = 11 x 41 x 271 x 9091
  1234567 = 127 x 9721
  123456789 = 3 x 3 x 3607 x 3803
  987654321 = 3 x 3 x 17 x 17 x 379721
  100000001 = 17 x 5882353
  1000000001 = 7 x 11 x 13 x 19 x 52579

 なんだか不思議な感じがしませんか?

続きを読む… »

Tail-Lagoon @ 13:56   |   PageUp