次: , 上: Numeric operations


25.1 factor: 素因数を出力

factorは素因数を出力します.概要です.

     factor [number]...
     factor option

コマンドラインにnumberが指定されない場合,factorは標準 入力から読み込み,それは,改行,タブ,またはスペースで区切られています.

オプションは,--help--versionのみです. See Common options.

使用するアルゴリズムは,あまり洗練されたものではないので,入力によって はfactorの実行に時間がかかることがあります.factor にとって最も厳しいものは,大きな素数の乗数です.二つの大きな32ビットの 素数の乗数を素因数分解すると,1.6 GHz Athlonで80秒程度のCPU時間がかか ります.

     $ p=`echo '4294967279 * 4294967291'|bc`
     $ factor $p
     18446743979220271189: 4294967279 4294967291

同様に,最大の64ビットの素数の“素因数分解”で,GNU factor (coreutils-5.1.2)で80秒程度かかります.

     $ factor 18446744073709551557
       18446744073709551557: 18446744073709551557

反対に,factorは,大きな64ビットの数字を十秒ちょっとで素因数 分解します.

     $ factor `echo '2^64-1'|bc`
     18446744073709551615: 3 5 17 257 641 65537 6700417

終了ステータスのゼロは成功を示し,ゼロ以外の値は失敗を示します.