0

すべての素数が因数基数 B 未満である(非素数)数の素因数を取得するにはどうすればよいですか?

たとえば、B=8 の場合、使用される素数は {2,3,5,7} にしかありません。48 を指定すると、2^4 * 3 が返されます。

Wolfram alphaでこれを行う方法を知っている人はいますか?

ありがとう

4

2 に答える 2

0

申し訳ありませんが、Mathematica については何も知りませんが、動作するアルゴリズムは次のとおりです。

開始値 B を 2 で割り、剰余を調べます。

剰余がゼロの場合、2 が因数でした。そうでない場合は、他の素数 [3, 5, 7, ...] を開始値の半分まで試します。

開始値を見つけたばかりの係数で割り、それからやり直すことで、プロセスを繰り返します。

非常に大きな数を扱う場合は、除算の精度に注意してください。

于 2014-12-12T20:32:15.253 に答える