この計算ツールでできること
このツールは、入力した整数のすべての約数(因数)を求め、掛け合わせると元の数になる「因数ペア」を一覧で表示します。約数とは、ある整数を割り切れる(余りが出ない)整数のことです。因数ペアとは、掛け合わせると元の値になる2つの数の組み合わせで、たとえば \(6 \times 8 = 48\) のような形になります。
使い方
0以外の整数(正でも負でもOK)を入力欄に入れて実行するだけです。結果として、約数の個数、小さい順に並べた約数の一覧、そして \(a \times b = n\) の形で書かれたすべての因数ペアの3つが表示されます。負の数の場合は符号付きのペアが表示されます。これは、積を負にするには一方が負・もう一方が正である必要があるためです。
計算のしくみ
このツールは「試し割り(trial division)」という方法を使っています。入力した数を \(n\)、その絶対値を \(m = |n|\) とします。割る候補 \(i\) は 1 から \(\sqrt{m}\) の整数部分まで試せば十分です。$$ i = 1, 2, \dots, \left\lfloor \sqrt{m} \right\rfloor $$ \(m\) を \(i\) で割った余りが 0 になるたびに、\(i\) と \(\tfrac{m}{i}\) の両方が約数となり、この2つが \(i \times \tfrac{m}{i} = m\) というペアを作ります。$$ m \bmod i = 0 \;\Rightarrow\; i \text{ and } \tfrac{m}{i} \text{ are factors} $$ \(\sqrt{m}\) までしか試さなくてよいのは、平方根より大きい約数は必ず平方根より小さい約数とペアになるからです。完全平方数の場合、その平方根は1回だけ表示され、自分自身とのペアとして示されます。
計算例
\(n = 48\) の場合、平方根は約 6.93 なので、\(i = 1\) から 6 まで試します。すると $$ 1\times48,\; 2\times24,\; 3\times16,\; 4\times12,\; 6\times8 $$ が見つかります(5 は 48 を割り切れません)。約数の一覧は 1, 2, 3, 4, 6, 8, 12, 16, 24, 48 で、合計10個になります。
よくある質問
なぜ 0 を入力できないのですか? すべての整数が 0 を割り切れるため、0 の約数は無限に存在してしまいます。0 以外の整数を入力してください。
負の数はどう扱われますか? -6 の場合、積が負になる必要があるため、正のペアそれぞれが2つの符号付きペアに分かれます。たとえば \(-1\times6,\; 1\times-6,\; -2\times3,\; 2\times-3\) となります。
ここでいう素数とは? 素数とは約数がちょうど2つ(1とその数自身)だけの数です。たとえば 7 の約数は 1 と 7 になります。