素因数分解

mathematics

ふとしたきっかけで昔作ったプログラムを思い出した。小さなwebアプリ。phpで作ってある。サーバーにインストールされているライブラリが違うため動かなかったのだけどメンテナンスしたら動くようになったので再び公開してみる。携帯でも動く。道で歩きながらとか、電車の中でとか素因数分解が出来てとても便利。

素数を列挙するだけ。何の予備知識もなく(というか敢えて何も見ないで)素数を列挙するための手順を考えプログラムにしてみた。次の「エラトステネスの篩」によるものがあるわけだからこれは何の意味もないんだけどせっかく作ったので今でも残してある。最大10,000まで。出力結果はcsvとして保存すればexcelとかで扱いやすいはず。

同じく素数を列挙するる。wikipedia:エラトステネスの篩というメソッドを使っている。最大、100,000まで。勿論、俺の作ったメソッドより高速。

最大公約数の算出を行う。カンマで区切って複数の数値を入力。wikipedia:ユークリッドの互除法を使っている。

このプログラムの主要機能。素因数分解。2^36(68719476736)まで素因数分解可能。上限値を何でこんな半端な数にしたのかは覚えてない。

    • -

これ以外に「あなたが死ぬ日」ってのを作った。こちらはなぜか誤動作する。気が向いたらメンテナンスして紹介するかも。