整数は数学の中で最も基本的な対象であり、約数と倍数はその世界を探検するための最初の道具です。
「割り切れる」という単純な関係から、素数、約数の個数、倍数の判定法まで、整数の奥深い構造が見えてきます。
整数 $a$ と $0$ でない整数 $b$ に対して、$a = bc$ となる整数 $c$ が存在するとき、 「$a$ は $b$ で割り切れる」といいます。このとき、$b$ は $a$ の約数、 $a$ は $b$ の倍数と呼びます。
たとえば、$12 = 3 \times 4$ なので、$3$ は $12$ の約数であり、$12$ は $3$ の倍数です。 同様に、$4$ も $12$ の約数です。$12$ の正の約数をすべて挙げると、$1, 2, 3, 4, 6, 12$ の6個です。
「$b$ が $a$ の約数」とは、$a \div b$ の余りが $0$ であることと同じです。 つまり、$a$ を $b$ で割ったときぴったり割り切れる関係です。
数学的に書けば、$b \mid a$($b$ は $a$ を割り切る)とは、$a = bc$ なる整数 $c$ が存在すること。 この「$c$ が整数」という条件がポイントです。$c$ が分数や小数ではダメです。
中学校までは正の数だけを考えましたが、高校では負の数も約数・倍数に含めます。 たとえば、$12 = (-3) \times (-4)$ なので、$-3$ も $12$ の約数です。 $12$ の約数は $\pm 1, \pm 2, \pm 3, \pm 4, \pm 6, \pm 12$ の12個になります。
ただし、入試では「正の約数」を求めることがほとんどです。 特に指定がなければ正の約数を答えるのが一般的ですが、 問題文に「正の約数」と明記されている場合はそれに従いましょう。
0は全ての整数の倍数です。 なぜなら、任意の整数 $b$ に対して $0 = b \times 0$ が成り立つからです。 $0$ は $3$ の倍数であり、$7$ の倍数であり、どんな整数の倍数でもあります。
✕ 誤:「0は倍数ではない」「0で割れるから0は全ての数の約数」
○ 正:0は全ての整数の倍数。 一方、0で割ることは定義されないので、0は約数にはなれません。
また、1は全ての整数の約数です。 どんな整数 $a$ に対しても $a = 1 \times a$ が成り立つからです。
大学数学や数論では、「$a$ は $b$ を割り切る」ことを $a \mid b$ と書きます。 縦線1本の記号で、「$a$ divides $b$」と読みます。
この記号を使うと、約数・倍数の性質が簡潔に表現できます。 たとえば「$a \mid b$ かつ $a \mid c$ ならば $a \mid (b + c)$」。 これは「$a$ が $b$ と $c$ の両方の約数なら、$b + c$ の約数でもある」という意味です。 整数論はこうした記号的表現で深い定理を証明していく学問です。
自然数を分類する上で、最も重要な概念が素数です。 化学で物質を元素に分解するように、整数も「これ以上分解できない数」に分けることができます。 その「原子」にあたるのが素数です。
素数とは、$1$ とその数自身以外に正の約数をもたない、 $2$ 以上の自然数のことです。 たとえば、$2, 3, 5, 7, 11, 13, 17, 19, 23, 29, \ldots$ が素数です。
一方、$1$ でも素数でもない自然数を合成数といいます。 合成数は、$1$ とその数自身以外の正の約数をもつ数です。 $4, 6, 8, 9, 10, 12, 14, 15, \ldots$ が合成数です。
$2$ 以上の自然数はすべて、素数か合成数のどちらかに分類されます。 そして $1$ はどちらでもありません。
$$\text{正の整数} = \begin{cases} 1 & (\text{素数でも合成数でもない}) \\ \text{素数} & (2, 3, 5, 7, 11, \ldots) \\ \text{合成数} & (4, 6, 8, 9, 10, \ldots) \end{cases}$$
合成数は必ず「より小さい2つ以上の自然数の積」に分解できます。 素数はこれ以上分解できない「整数の原子」です。 この事実が、次の記事で学ぶ「素因数分解」の基盤になります。
✕ 誤:「1は正の約数が1とそれ自身だけだから素数だ」
○ 正:1は素数ではありません。 素数の定義は「$1$ とその数自身以外に正の約数をもたない2以上の自然数」です。
なぜ1を素数から除外するのでしょうか? もし1を素数とすると、 素因数分解の一意性(算術の基本定理)が崩れてしまうからです。 たとえば $6 = 2 \times 3 = 1 \times 2 \times 3 = 1 \times 1 \times 2 \times 3$ と、 1をいくつでも掛けられるので「唯一の分解」にならなくなります。 数学の体系を美しく保つために、1は素数から除外されています。
ある範囲内の素数をすべて見つける方法として、 エラトステネスのふるいが有名です。 これは紀元前3世紀のギリシャの学者エラトステネスが考案した方法で、 2000年以上経った今でも使われています。
手順は簡単です。$2$ から順に、その数の倍数(自分自身を除く)をすべて消していきます。 $2$ の倍数($4, 6, 8, \ldots$)を消し、次に $3$ の倍数($6, 9, 12, \ldots$)を消し、 $5$ の倍数を消し……と繰り返します。残った数が素数です。
たとえば $50$ 以下の素数を求めるなら、$\sqrt{50} \approx 7.07$ なので、 $7$ 以下の素数 $2, 3, 5, 7$ の倍数を消すだけで十分です。 なぜ $\sqrt{50}$ までで十分なのかは、9-2で詳しく説明します。
✕ 誤:「偶数は2で割り切れるから素数ではない」→ 2自身を忘れている
○ 正:2は素数です。 2の正の約数は $1$ と $2$ だけなので、素数の定義を満たします。 2以外の偶数はすべて2で割り切れるので合成数です。 つまり、2は唯一の偶数の素数です。
「素数はすべて奇数」と思い込みがちですが、2は例外です。 素数に関する問題では $2$ を見落とさないよう注意しましょう。
素数は無限に存在します。この事実は紀元前3世紀、ユークリッドの『原論』で証明されました。 証明は背理法を使います。
「素数が有限個しかない」と仮定し、それらを $p_1, p_2, \ldots, p_n$ とします。 $N = p_1 \times p_2 \times \cdots \times p_n + 1$ を考えると、 $N$ はどの $p_i$ で割っても余りが $1$ になります。 つまり $N$ は $p_1, \ldots, p_n$ のどれでも割り切れません。 しかし $N \geq 3$ なので、$N$ は素数であるか、$p_1, \ldots, p_n$ に含まれない素因数をもつはずです。 いずれの場合も「素数は $p_1, \ldots, p_n$ の $n$ 個だけ」という仮定に矛盾します。
わずか数行の証明ですが、2000年以上前にこの論法が生まれたことは驚くべきことです。
ある自然数の正の約数を全部数えたり、その合計を求めたりする問題は入試でよく出ます。 ここでは素因数分解を使って、約数の個数と総和を効率よく求める公式を学びます。
まず、具体例で考えてみましょう。$12 = 2^2 \times 3$ の正の約数をすべて書き出すと、 $1, 2, 3, 4, 6, 12$ の6個です。これらはすべて $2^a \times 3^b$($0 \leq a \leq 2$, $0 \leq b \leq 1$) の形で書くことができます。
| $3^0 = 1$ | $3^1 = 3$ | |
|---|---|---|
| $2^0 = 1$ | $1$ | $3$ |
| $2^1 = 2$ | $2$ | $6$ |
| $2^2 = 4$ | $4$ | $12$ |
$a$ の選び方は $0, 1, 2$ の 3通り、$b$ の選び方は $0, 1$ の 2通り。 積の法則により、約数の個数は $3 \times 2 = 6$ 個です。
自然数 $N = p_1^{e_1} \times p_2^{e_2} \times \cdots \times p_k^{e_k}$ の正の約数は、すべて $p_1^{a_1} \times p_2^{a_2} \times \cdots \times p_k^{a_k}$($0 \leq a_i \leq e_i$)の形で表せます。
$a_1$ の選び方は $0, 1, 2, \ldots, e_1$ の $(e_1 + 1)$ 通り。 $a_2$ の選び方は $(e_2 + 1)$ 通り。……$a_k$ の選び方は $(e_k + 1)$ 通り。
各 $a_i$ の選び方は互いに独立なので、積の法則により 約数の個数は $(e_1+1)(e_2+1)\cdots(e_k+1)$ 個になります。
つまり、この公式の本質は「各素因数について指数を何にするかを独立に選ぶ」という 組合せの考え方です。場合の数(第6章)で学んだ積の法則がここでも活躍します。
自然数 $N = p_1^{e_1} \times p_2^{e_2} \times \cdots \times p_k^{e_k}$ について
正の約数の個数:
$$(e_1 + 1)(e_2 + 1) \cdots (e_k + 1)$$正の約数の総和:
$$(1 + p_1 + p_1^2 + \cdots + p_1^{e_1})(1 + p_2 + p_2^2 + \cdots + p_2^{e_2}) \cdots (1 + p_k + p_k^2 + \cdots + p_k^{e_k})$$$12 = 2^2 \times 3$ の約数の総和を考えます。
すべての約数は $2^a \times 3^b$($0 \leq a \leq 2$, $0 \leq b \leq 1$)の形です。総和は:
$$\sum_{a=0}^{2}\sum_{b=0}^{1} 2^a \cdot 3^b = \left(\sum_{a=0}^{2} 2^a\right)\left(\sum_{b=0}^{1} 3^b\right)$$
$= (1 + 2 + 4)(1 + 3) = 7 \times 4 = 28$
確認:$1 + 2 + 3 + 4 + 6 + 12 = 28$。一致しています。
2つの $\sum$ を分離できるのは、各項が $2^a \cdot 3^b$ と「積の形」になっているからです。 これは分配法則 $(A+B)(C+D) = AC + AD + BC + BD$ の拡張にほかなりません。
$200 = 2^3 \times 5^2$ を素因数分解できます。
正の約数の個数:$(3+1)(2+1) = 4 \times 3 = 12$ 個
正の約数の総和:$(1+2+4+8)(1+5+25) = 15 \times 31 = 465$
✕ 誤:$200 = 2^3 \times 5^2$ だから約数の個数は $3 \times 2 = 6$ 個
○ 正:指数そのものではなく、指数に1を足した数を掛けます。 $(3+1) \times (2+1) = 12$ 個。
なぜ1を足すかというと、指数 $0$(つまり「その素因数を使わない」場合)も選択肢に入るからです。 $2$ の指数は $0, 1, 2, 3$ の4通りあり、これは $3 + 1 = 4$ です。
大学の数論では、$n$ の正の約数の個数を $d(n)$(または $\tau(n)$)、 約数の総和を $\sigma(n)$ と書きます。 これらは約数関数と呼ばれ、整数論の重要な研究対象です。
約数関数には面白い性質があり、たとえば「$\sigma(n) = 2n$ を満たす $n$ は完全数と呼ばれます」。 $6$ と $28$ は完全数です($1+2+3+6 = 12 = 2 \times 6$ ではなく $1+2+3=6$、$1+2+4+7+14=28$)。 完全数が無限に存在するかどうかは、現在も未解決の問題です。
ある数が2の倍数か、3の倍数か、といったことを素早く判定する方法があります。 これらは倍数の判定法と呼ばれ、暗算で使える実用的なテクニックです。 ただし、「なぜそうなるのか」を理解しておけば、忘れても自分で導けます。
2の倍数:一の位が $0, 2, 4, 6, 8$(偶数)
3の倍数:各位の数の和が3の倍数
4の倍数:下2桁が4の倍数
5の倍数:一の位が $0$ または $5$
8の倍数:下3桁が8の倍数
9の倍数:各位の数の和が9の倍数
倍数の判定法は、大きく分けて2つの原理に基づいています。
原理1:$10^k$ を割った余りに注目する(2, 4, 5, 8の倍数)
$10 = 2 \times 5$ なので、$10^k$ は $2^k$ と $5^k$ で割り切れます。 したがって、下 $k$ 桁だけが $2^k$ や $5^k$ の倍数かどうかを決めます。
原理2:$10 \equiv 1 \pmod{m}$ を利用する(3, 9の倍数)
$10$ を $3$ で割ると余り $1$、$9$ で割っても余り $1$ です。 つまり $10 \equiv 1$、$100 \equiv 1$、$1000 \equiv 1$、……(mod 3 または 9)。 このため、各桁の「重み」がすべて $1$ になり、各位の数の和だけで判定できるのです。
なぜ「各位の数の和が3の倍数」であれば、もとの数が3の倍数なのでしょうか。 4桁の整数 $N$ を $N = 1000a + 100b + 10c + d$ とすると:
$$N = 999a + 99b + 9c + (a + b + c + d)$$ $$= 9(111a + 11b + c) + (a + b + c + d)$$$9(111a + 11b + c)$ は明らかに3の倍数なので、$N$ が3の倍数かどうかは $a + b + c + d$(各位の数の和)が3の倍数かどうかで決まります。
$100 = 4 \times 25$ なので、$100$ は $4$ の倍数です。 したがって、$1000, 10000, \ldots$ もすべて $4$ の倍数です。
$N = (\text{百の位以上}) \times 100 + (\text{下2桁})$ と分解すると、 前半は $4$ の倍数なので、$N$ が $4$ の倍数かどうかは下2桁が4の倍数かどうかで決まります。
同様に $1000 = 8 \times 125$ なので、$8$ の倍数の判定は下3桁で行います。
✕ 誤:「$12$ は一の位が $2$ だから4の倍数ではない」
○ 正:4の倍数の判定は下2桁を見ます。 $12 \div 4 = 3$ なので $12$ は4の倍数。
2の倍数は「一の位」、4の倍数は「下2桁」、8の倍数は「下3桁」。 $2^1, 2^2, 2^3$ に対応して見る桁数が $1, 2, 3$ と増えていきます。 $10^1 = 2 \times 5$、$10^2 = 4 \times 25$、$10^3 = 8 \times 125$ だからです。
「各位の数の和」で判定するのは3の倍数と9の倍数の両方ですが、条件が異なります。
✕ 誤:「$123$ は各位の和が $1+2+3=6$ で、$6$ は9の倍数ではないから3の倍数でもない」
○ 正:$6$ は3の倍数なので $123$ は3の倍数です。 ただし $6$ は9の倍数ではないので $123$ は9の倍数ではありません。
9の倍数ならば必ず3の倍数ですが、逆は成り立ちません。 $9 = 3 \times 3$ なので、9の倍数の方が条件が厳しいのです。
倍数の判定法の背後には、合同式(mod)の考え方があります。 $a \equiv b \pmod{m}$ とは「$a$ と $b$ を $m$ で割った余りが等しい」という意味です。
$10 \equiv 1 \pmod{9}$ なので $10^k \equiv 1^k = 1 \pmod{9}$。 したがって $N = a_n \cdot 10^n + \cdots + a_1 \cdot 10 + a_0 \equiv a_n + \cdots + a_1 + a_0 \pmod{9}$。
合同式は整数の問題を解く強力な道具であり、 暗号理論(RSA暗号など)やコンピュータサイエンスでも広く使われています。
ここまで学んだ約数と倍数の概念を、全体像として整理しましょう。
| 概念 | 定義 | 次の記事とのつながり |
|---|---|---|
| 約数・倍数 | $a = bc$ なる整数 $c$ が存在 | 最大公約数・最小公倍数の基盤 |
| 素数 | 1とそれ自身以外に正の約数なし | 素因数分解の「部品」 |
| 合成数 | 素数の積に分解できる | 素因数分解で一意に表せる |
| 約数の個数・総和 | 素因数分解から計算 | 場合の数の積の法則と同じ原理 |
| 倍数の判定法 | 位取りの性質を利用 | 合同式(mod)の入口 |
Q1. $72$ の正の約数をすべて挙げ、その個数を答えてください。
Q2. 1は素数ですか? その理由も答えてください。
Q3. $2574$ は3の倍数ですか? 9の倍数ですか?
Q4. $300$ の正の約数の個数と総和を求めてください。
Q5. $0$ は $7$ の倍数ですか? 理由も答えてください。
この記事で学んだ内容を、入試形式の問題で確認しましょう。
$540$ の正の約数の個数と、正の約数の総和を求めよ。
正の約数の個数は $24$ 個、正の約数の総和は $1680$
方針:素因数分解し、公式を適用する。
$540 = 2^2 \times 3^3 \times 5$
正の約数の個数:$(2+1)(3+1)(1+1) = 3 \times 4 \times 2 = 24$ 個
正の約数の総和:$(1+2+4)(1+3+9+27)(1+5) = 7 \times 40 \times 6 = 1680$
$0, 1, 2, 3, 4$ の5個の数字から異なる3個を選んで3桁の整数をつくる。このうち、3の倍数は何個あるか。
$20$ 個
方針:3の倍数は各位の数の和が3の倍数。まず3数の組を決め、次に並べ方を数える。
3個の数字の和が3の倍数になる組合せを探す。
$\{0, 1, 2\}$:和 $= 3$ ✓ / $\{0, 2, 4\}$:和 $= 6$ ✓ / $\{1, 2, 3\}$:和 $= 6$ ✓ / $\{2, 3, 4\}$:和 $= 9$ ✓
それ以外の組($\{0,1,3\}, \{0,1,4\}, \{0,3,4\}, \{1,2,4\}, \{1,3,4\}, \{0,2,3\}$)は和が3の倍数にならない。
0を含む組($\{0, 1, 2\}$, $\{0, 2, 4\}$):百の位に $0$ は置けないので、百の位の選び方は2通り、残り2桁は $2! = 2$ 通り。各 $2 \times 2 = 4$ 個。
0を含まない組($\{1, 2, 3\}$, $\{2, 3, 4\}$):3桁すべてに自由に配置でき、$3! = 6$ 個。
合計 $4 + 4 + 6 + 6 = 20$ 個。
$200$ の正の約数のうち、偶数であるものの個数とその総和を求めよ。
偶数の約数の個数は $9$ 個、その総和は $434$
方針:偶数の約数は $2$ の因数を少なくとも1つ含む。$2$ の指数が $1, 2, 3$ の場合を考える。
$200 = 2^3 \times 5^2$
正の約数全体は $2^a \times 5^b$($0 \leq a \leq 3$, $0 \leq b \leq 2$)の形。全部で $4 \times 3 = 12$ 個。
偶数の約数は $a \geq 1$、つまり $a = 1, 2, 3$ の場合。
個数:$3 \times 3 = 9$ 個
総和:$(2 + 4 + 8)(1 + 5 + 25) = 14 \times 31 = 434$
別解:全約数の総和から奇数の約数の総和を引く。奇数の約数は $a = 0$ のとき、$(1)(1+5+25) = 31$。$465 - 31 = 434$。
5桁の整数 $257\square 6$ が8の倍数であるとき、$\square$ に入る数字をすべて求めよ。
$\square = 3, 7$
方針:8の倍数の判定は下3桁を調べる。$\square$ を $d$($0 \leq d \leq 9$)とおく。
下3桁は $\overline{d06}$、すなわち $100d + 6$ が8の倍数であればよい。ただし下3桁は $7d6$ ではなく… 再確認:$257\square 6$ の下3桁は $\square 06$ ではなく、百の位が $7$、十の位が $\square$、一の位が $6$ であるため下3桁は $7\square 6$。
下3桁 $= 700 + 10d + 6 = 706 + 10d$
$706 + 10d$ が8の倍数であればよい。$706 = 8 \times 88 + 2$ なので $706 + 10d \equiv 2 + 10d \pmod{8}$。
$10d \equiv 2d \pmod{8}$ なので $2 + 2d \equiv 0 \pmod{8}$。
$2(1 + d) \equiv 0 \pmod{8}$ より $1 + d \equiv 0 \pmod{4}$。
$d = 3$ のとき $1 + 3 = 4$(4の倍数)✓
$d = 7$ のとき $1 + 7 = 8$(4の倍数)✓
検算:$706 + 30 = 736 = 8 \times 92$ ✓、$706 + 70 = 776 = 8 \times 97$ ✓
正の約数の個数がちょうど $6$ 個である自然数のうち、最小のものを求めよ。
$12$
方針:約数が6個になるための素因数分解の形をすべて列挙し、各形で最小のものを比較する。
$6 = (e_1+1)(e_2+1)\cdots$ と表す方法を考える。
パターン1:$6 = 6$。つまり $N = p^5$ の形。最小は $2^5 = 32$。
パターン2:$6 = 3 \times 2$。つまり $N = p^2 \times q$ の形($p, q$ は異なる素数)。 最小にするには小さい素数に大きい指数を割り当てる。$N = 2^2 \times 3 = 12$。
パターン3:$6 = 2 \times 3$。つまり $N = p \times q^2$ の形。最小は $2 \times 3^2 = 18$。
$32, 12, 18$ の中で最小は $12$。
⚠️ パターン2とパターン3は「どの素数に大きい指数を割り当てるか」の違い。小さい素数に大きい指数を付けると $N$ が小さくなる。
$1400$ の正の約数の個数と、正の約数の総和を求めよ。また、$1400$ の正の約数のうち偶数は何個あるか。
正の約数の個数:$24$ 個、正の約数の総和:$3720$、偶数の約数:$18$ 個
方針:素因数分解し、公式で個数・総和を求める。偶数の約数は全体から奇数の約数を引く。
$1400 = 2^3 \times 5^2 \times 7$
約数の個数:$(3+1)(2+1)(1+1) = 4 \times 3 \times 2 = 24$ 個
約数の総和:$(1+2+4+8)(1+5+25)(1+7) = 15 \times 31 \times 8 = 3720$
奇数の約数の個数:$2$ の指数が $0$ のもの、つまり $5^b \times 7^c$($0 \leq b \leq 2$, $0 \leq c \leq 1$)の個数。$3 \times 2 = 6$ 個。
偶数の約数の個数:$24 - 6 = 18$ 個