「各桁を足したものが 3 の倍数なら 3 の倍数」のように、2, 3, 5, 9, 10, 11 などいくつかの自然数については、倍数を判定する方法がよく知られている。そのうち、いくつかの判定方法は、倍数か否かが判定できるだけだが、剰余が計算できるものもある。たとえば、前述した 3 の倍数の判定方法の手順、各桁を足すという操作は剰余が保存されるので、3 で割った余りを求めることができる。
本稿では 7 に関して、昔から知られている倍数判定方法、および、筆者が発見した、倍数判定方法や剰余算出方法を紹介する。
7 の倍数判定方法として以前から知られているのは、「下 1 桁を 2 倍したものを、下 1 桁を除いたものから引く」、という操作を繰り返して得られる値が 7 で割り切れるか否か」というものである。この方法を、仮に「下 1 桁 2 倍法」と呼ぶことにする。
(筆者は 40 年くらい前に書籍で知っただけで、今となってはその書籍がなんだったかも覚えていない。)
「下 1 桁 2 倍法」は、比較的用意に 7 の倍数か否かを判定できるが、剰余は保存しないので、7 で割り切れない場合に、余りがいくつになるのかは、直接的にはわからない。
7 で割り切れる数である
念の為に書き添えておくと、「下 1 桁 2 倍法」は操作によって 2 桁以下になったところで 7 で割り切れるかを判定する。九九の 7 の段のほか、70, 77, 84, 91, 98 が 7 の倍数であることを知っていなければならない。
2020 年の 5 月に、「下 1 桁 2 倍法」とほぼ同様の手続きで判定できる「下 1 桁 5 倍法」と「下 2 桁以外 2 倍法」を発見した。
前者は「下 1 桁を 5 倍したものを、下 1 桁を除いたものに足す」という操作を繰り返すもので、「下 1 桁 2 倍法」とほぼ同じである。
「下 1 桁 5 倍法」に関しても、
特に、
「下 1 桁 5 倍法」は、「下 1 桁 2 倍法」に比べ、5 倍の計算が面倒か、操作によって中間結果がどんどん大きくなっていって大変か、という懸念があった。しかし、実際にやってみると、5 の段のかけ算なので面倒ではないし、5 倍したものの下 1 桁は 0 か 5 なので、むしろ足し算は容易である。繰り下がりよりも、繰り上がりのほうが手計算では間違いが発生しにくいし、中間結果が変に大きくなりすぎることもない。
ここまでで紹介した「下 1 桁 2 倍法」「下 1 桁 5 倍法」は、いずれも剰余は保存されないので、倍数判定はできても、剰余を算出することはできない (厳密には、操作を何回繰り返したか、中間結果の値がいくつか、を元に算出できる)。
「下 2 桁以外 2 倍法」は、「下 2 桁以外を 2 倍したものを、下 2 桁に足す」という操作を繰り返すものである。この操作の前後の値は 7 を法として合同なので、繰り返し操作しても剰余が保存される、すなわち、元の数の剰余が求められるのである。
例によって、
「下 2 桁以外を 2 倍したものを、下 2 桁に足す」と、2 倍する桁数が多いのだが、2 をかけるだけなのでさほど大変ではない。また、「下 1 桁 2 倍法」「下 1 桁 5 倍法」に比べると、一回の操作で減る桁数が倍なので、操作の回数は少なくて済む。
もちろん、剰余が計算できるのは大きい。
先日 (2021年5月),「下 2 桁以外 2 倍法」を応用して、より桁数の少ない計算手順で剰余を求める方法を発見した。仮に、「2 桁 2 倍法」と呼称する。
基本的には、10 進で表現された数を 2 桁ごとに区切り、上のほうから 2 倍して下位に足し込んでいく、という手順を繰り返すだけである。ただし、計算の途中の値は、随時 7 を法として合同な値に替えてもよい。
今までと同様、自然数
実際に筆算するときには、対象の自然数を書いたあと、2 桁ごとに区切る線を引き、そのブロックごとに下に必要な計算をしていけばよい。実際には表組みするほどではないが、下の表で説明すると、2 桁ごとに区切る線を引くと (A) ができる、(A) を計算しやすい一桁の値に変換していき、(B) ができる。あとは上位のブロックから、前列最後の値と (B) の和を 2 倍する、という操作を繰り返していく。
| 09 | 87 | 65 | 43 | 21 | 11 |(A)| 2 桁ごとに区切った値 |
| --- | --- | --- | --- | --- | --- || |
| 2 | 3 | 2 | 1 | 0 | -3 |(B)| (A) と合同な値 |
| 4 | 7 | 2 | 5 | 3 | -4 |(C)| 前列のいちばん下の値 と (B) との和 |
| | 0 | 4 | 10 | 6 | 3 |(D)| 以下、必要に応じて 2 倍したり、合同な値に変換したり |
|||| 3 | -1 | |(E)| |
2 桁以下の 7 の倍数は覚えておく必要があるが、九九の 7 の段と、