Re: 素因数分解
"Hiromu Hasegawa" <hassen@axel.ocn.ne.jp> writes:
> 素因数分解何年か前実質14桁作った、14桁計算させてみれば一瞬で計算する。
> あんなもん人間のする仕事でない。
> そこで500桁計算するプログラム作ってみたい、教授の玩具には成るだろう。
どんなアルゴリズムで作ったんでしょうか。
今時のパソコンであれば、14桁の素因数分解であれば試行割り算法で充分可能
だと思います。たぶん、19桁くらいまでは余裕。(64bit変数使えば19桁くらい
表現可能)
500桁は1600bitくらいあるので、ちょっと現状では無理だと思います。
素人が使うコンピュータのレベルだと100bitくらい(30桁程度)が挑戦にいい感じの
サイズだと思います。
このレベルだと試行割り算法はたぶん無理です。素人目にわかりやすいのは
2次ふるい法だと思います。2次ふるい法なら100bitくらいなら計算できるはず
です。
多倍長演算が必要になります。多倍長演算実装するのは難しいかもしれません。
その場合は、gnuMPあたりのライブラリを使うとよいかもしれません。
--
I LOVE SNOOPY! でつ
Yoshitaka Ikeda mailto:ikeda@4bn.ne.jp
My Honeypot: honey@4bn.ne.jp <-don't send this address
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735