新谷の日記

有意義なことが書けるように頑張ります

中学の時に西暦を素因数分解しようっていう問題って出ませんでした?

こんにちは、新谷です。

もうすぐ2020年も終わり、2021年になりますね。

今年は楽しみにしていたイベントや催し物がことごとく中止に追い込まれ、充実したかといわれると「うーん」といったところ。新しくPCも買ったし、趣味を充実させて来年は過ごしたいところ。

ところで、中学生のころ「素因数分解」って習いましたよね。ある自然数素数の積で表現するやつです。例えば10を素因数分解すると2\times 5、72なら2^{3}\times 3^{2}とか。

で、変な先生がいるところだと「今年の西暦を素因数分解してください」みたいな少し難易度高めな問題が出されたりするんですよね。2020は簡単なほうで、末尾が0なので10(2\times 5)で割って202、202の末尾が偶数だから2で割って101。101は素数なので、2020=2^{2}\times 5\times 101でおしまい。

ただ2021は末尾が偶数でもないし、5とか0でもないので何で最初は割ろうか少し困るところ。ということで、中学生は知っておくと何かと便利かもしれない素因数分解テクニックも交えながらつらつらと書いていきます。

まずは下の2つ。

  • 数字の末尾が偶数なら「2」で割る。
  • 数字の末尾が0 or 5なら「5」で割る。

上の2つは解説するまでもないですね。

各桁の数字を足したとき3の倍数なら「3」で割る。

今回は使いませんが、知っていると何かと便利。例えば111を素因数分解するとなった場合、各桁の数字を足すと1+1+1=3になって3の倍数になりますね。ということは111は3で割り切れることになり、素因数分解すると111=3\times 37になります。(あとは証明書いていくので読みたくないという方はSKIPしてください)

自然数が3桁の場合

100の位をa2 、10の位をa1、1の位をa0と書くと、これらを組み合わせた自然数100a_2+10a_1+a_0と書けますね(a_2,a_1,a_0は0~9の整数)。これを変形させます。

\begin{align}
100a_2+10a_1+a_0  &= (99a_2+a_2)+(9a_1+a_1)+a_0 \\
&= (99a_2+9a_1)+(a_2+a_1+a_0) \\
&= 3(33a_2+3a_1)+(a_2+a_1+a_0)
\end{align}

3(33a_2+3a_1)は3がかけられているので3の倍数であることは間違いありません。ですので、a_2+a_1+a_0が3の倍数、各桁の数字を足して3の倍数だったら必ず3で割り切れることになります。

自然数n桁の場合(一般化)

n桁の整数の場合、先ほどと同じように書くとすると下記のようになります。(a_kは0~9の整数。)

\displaystyle{
\sum^{n}_{k=0}10^{k}a_k
}

すごくすっきりしましたね。これを先ほどと同じように変形させます。

\begin{align}
\sum^{n}_{k=0}10^{k}a_k &= 10^{n}a_n + 10^{n-1}a_{n-1} +\cdots +10a_1+a_0\\
&=\left \{(10^n-1)+1\right \} a_n+\left \{(10^{n-1}-1)+1\right \} a_{n-1}+\cdots \\
&+(9+1)a_1+a_0
\\
&= \sum^{n}_{k=0}\left ( 10^{k}-1\right )a_k+\sum^{n}_{k=0}a_k
\end{align}

\displaystyle{10^{k}-1}は9が連続して並んでいるだけなので、\displaystyle{ \sum^{n}_{k=0}\left ( 10^{k}-1\right )a_k}は3で必ず割り切れます。

ですので、 \displaystyle{\sum^{n}_{k=0}a_k}つまりすべての桁の数字を足して3の倍数になれば自然数全体も3で割り切れることになります。

各桁を交互に足す引くを繰り返した時の結果が11の倍数なら「11」で割る。

これもここでは使いませんが知っていると何気に便利。例えば319を素因数分解するとなった場合、各桁の数字を交互に足し引きすると3-1+9=11になって11の倍数になりますね。ということは、319は11で割り切れることになり、素因数分解すると319=11\times 29になります。(あとは証明書いていくので読みたくないという方はSKIPしてください)

自然数が3桁の場合

100の位をa2 、10の位をa1、1の位をa0と書くと、これらを組み合わせた自然数100a_2+10a_1+a_0と書けますね(a_2,a_1,a_0は0~9の整数)。これを変形させます。

\begin{align}
100a_2+10a_1+a_0  &= (99a_2+a_2)+(11a_1-a_1)+a_0 \\
&= (99a_2+11a_1)+(a_2-a_1+a_0) \\
&= 11(9a_2+a_1)+(a_2-a_1+a_0)
\end{align}

11(9a_2+a_1)は11がかけられているので11の倍数であることは間違いありません。ですので、a_2-a_1+a_0が11の倍数、各桁の数字を交互に足し引きを繰り返して11の倍数だったら必ず11で割り切れることになります。

自然数n桁の場合(一般化)

n桁の整数の場合、先ほどと同じように書くとすると下記のようになります。(a_kは0~9の整数。)

\displaystyle{
\sum^{n}_{k=0}10^{k}a_k
}

すごくすっきりしましたね。これを先ほどと同じように変形させます。

\require{color}\begin{align}
\sum^{n}_{k=0}10^{k}a_k &= 10^{n}a_n + 10^{n-1}a_{n-1} +\cdots +10a_1+a_0\\
&=\left \{(10^n\textcolor{red}{-}1)\textcolor{red}{+}1\right \} a_n+\left \{(10^{n-1}\textcolor{red}{+}1)\textcolor{red}{-}1\right \} a_{n-1}+\cdots \\
&+(11-1)a_1+a_0(n\mbox{が奇数の時。偶数の時は赤字の符号が逆転。})
\\
&= \sum^{n}_{k=0}\left \{ 10^{k}+(-1)^k\right \} a_k+\sum^{n}_{k=0}(-1)^{k+1}a_k
\end{align}

\displaystyle{10^{k}+(-1)^{k}}はエイヤで11で割り切れます。(帰納法とか使えば求められるかも、知らんけど)

ですので、 \displaystyle{\sum^{n}_{k=0}(-1)^{k+1}a_k}、つまりすべての桁の数字で足し引きを繰り返して11の倍数になれば自然数全体も11で割り切れることになります。

a^{2}-b^{2}の形に変形させる。

中3だと因数分解a^{2}-b^{2}=(a-b)(a+b)の公式を習うと思いますが、この形に変形できるなら素因数分解は勝ちゲーです。例えば323を素因数分解する場合、323=18^{2}-1^{1}=(18-1)(18+1)=17\times 19でおしまいです。(そもそもどうやってその変形に持っていくの?っていうツッコみはナシで)

あとこれとセットで知っておくと便利なものが末尾が5の数字を2乗したときの公式。15^{2}=22535^{2}=122545^{2}=202555^{2}=302565^{2}=4225\cdotsと書いくと、下2桁は25・それより上の桁は(10の位の数字) \times (10の位の数字+1)になっていることが分かると思います。これも覚えておくと何かと便利です。(あとは証明書いていくので読みたくないという方はSKIPしてください)

☆2桁の場合の証明

10の位の数字をaとすると、末尾が5の数字は10a+5と書けます。これを2乗すると、下のように書けます。

\require{color}\begin{align}
(10a+5)^{2} &= 100a^{2}+100a+25 \\
&= 100\left \{a(a+1) \right \}+25
\end{align}

100\left \{a(a+1)\right \} は100がかけられているので、下2桁の25には被りません。ということで、下2桁は25・それより上の桁は(10の位の数字) \times (10の位の数字+1)になります。(2桁じゃなくてもこれは成立するらしいね)

2021を素因数分解する

さて、本題に入って2021を素因数分解します。2021とにらめっこしていると、下のように書けます。

\require{color}\begin{align}
2021 &= 2025 - 4 \\
&= 45^{2} - 2^{2} \\
&=(45-2)(45+2) \\
&= 43\times 47
\end{align}

2021はa^{2}-b^{2}の形に変形できたので、だいぶ楽に素因数分解できると思います。そもそもこれをどう思いつくの?っていうのはあると思いますが慣れです。似たような問題をこなせばまあまあわかると思いますので、中学生は冬休み中に慣れておくのもいいかもしれません。

この記事にオチがあるわけではないのですが、どこかしらの学校ではほぼ確実にこのような問題が出ると思いますので覚えておくと便利かも?

あとはもしかすると上につらつら書いてきたことは高校受験で役立ったりするかもしれないので、冬休み中の復習にぜひ活用してください。