名称

factor, primes - factor は素因数分解を行なう, primes は素数を求める

書式

factor -[h] [ number ] ... [ number ] ...
primes -[h] [ start [ stop ]]

解説

factor ユーティリティは 0 以上 ULONG_MAX ( 32 ビットアーキテクチャでは 4294967295 であり、 64 ビットアーキテクチャでは 18446744073709551615) 以下 の整数を素因数分解します。 素因数分解されると、元の整数の後ろに ``:'' をつけて、 さらにその後ろに一行で因数のリストが表示されます。 因数は空白で区切りながら昇順に表示されます。 もし同じ因数で複数回割ることができる場合は、その因数は回数分表示されます。
factor に 1 つ以上の引数を与えて実行すると、 それぞれについて素因数分解を行います。
factor を引数無しで実行すると、 factor は一行につき一つの数値を、 ファイルの終了またはエラーとなるまで、標準入力から読み込みます。 先頭の空白ならびに空行は無視されます。 数字の前に一つだけ - か + の記号がついているのはかまいません。 数字は非数字キャラクタ(たとえば改行)で終了します。 数字を一つ読む毎に、それは素因数分解されます。 入力行はそれぞれ一行が255文字を越えてはなりません。
primes ユーティリティは start 以上 stop 未満の素数を一行に一つ、昇順で表示します。 start は最低でも 0 以上で、 stop 未満であることが必要です。 stop は 4294967295 よりも大きくてはなりません。 stop を省略した場合のデフォルトは 4294967295 です。
引数なしで primes ユーティリティを起動した場合、 start は標準入力から読み込まれます。 この場合 stop として 4294967295 が用いられます。 start の数字の頭に + 記号を付けるのはかまいません。 start の数字は非数字のキャラクタ(例えば改行)で終了します。 入力行は255文字を越えてはなりません。

オプション

-h
10 進数ではなく 16 進数で、結果を表示します。

診断

範囲外あるいは不正な入力を与えると、 答として `ouch' を標準エラーに出力します。

バグ

factor は ``十大凶悪'' 因子のリストを処理するのには使えませんし、 primes で素数の世界記録を求めることはできません。