ある数が「○の倍数か」を見分けるための“万能”な方法

割り算とどっちが早いのだろう……

» 2018年05月04日 11時30分 公開
[QuizKnockねとらぼ]

 ある数が割り切れるかどうか、つまりnの倍数であるかどうかを知りたい場面は結構たくさんある。分数を約分するときや、身近なところだと割り勘を計算するときなどだ。

 場面の多さに比して、ふつう倍数の判定は難しい。例えば「64811は11の倍数か?」に瞬時に答えられる人はそう多くないはずだ。

 ただし、いくつかの小さい整数に対しては、その倍数に関する法則が広く知られていて簡単に見分けられることがある。

 例えば、2の倍数なら必ず一の位は2の倍数(偶数)になる。3の倍数であれば、各桁の数字を足し合わせると和が3の倍数になる(例:357→3+5+7=15は3の倍数)。特に3の倍数の判定法は簡単なので知っておくと便利だ。

 ほかのいくつかの素数に対しても、簡単な判定法があるので以下の画像にまとめてみた。また、合成数の判定はこれらを組み合わせて行えばよい(例えば6の倍数は2と3どちらの倍数でもあることを判定することと同じ)。



 ここに挙げたような例は覚えやすいし楽な判定法であり、一般によく知られている。ところが、7や11の倍数の判定法はあまり耳にしない。

 調べてみると、7の倍数ならこんな方法が出てくる。


数を3桁ごとに区切り、位が小さい方から引く→足す→引く→……を繰り返すと結果が7の倍数になる

(例:4534845→-845+534-4=-315で7の倍数、よって4534845は7の倍数)


 うーん、ややこしい!  3桁ごとに区切って足し引きするのがもう大変だし、結局3桁の数を7で割ってみないと分からない。

 11の倍数も13の倍数もこんな感じの役に立たなそうな方法が出てくる。もう少しシンプルにならないのか。


万能の判定法、現る

 上の7の倍数の方法がなぜイヤかというと、「何桁で区切るんだっけ?」「どの順番で足すんだっけ? 引くんだっけ?」が覚えられないからだ。覚えてもこの方法は基本的に7の倍数にしか使えない(※)し、もう面倒くさいから割り算しちゃえと思ってしまう。

 ※この方法は1001=7×11×13であることに基づく方法なので、11と13の倍数には使うことができる

 そこで調べてみると、どんな数の倍数でも同じような手順で判定できる方法があるらしい。なんだ、それを最初から教えてくれればいいのに。

 その方法とはズバリこれ。

 「一の位の数字に2をかけて、1の位を切り落とした残りから引く」→「nの倍数かどうかを見たい時、nで割って割り切れるかを見る」

 ナンノコッチャなので、具体例を。例の7の倍数でやってみたい。ある数が7の倍数なら、「一の位の数に2をかけて、残った数から引いても7の倍数」。例えば294なら、一の位の4に2をかけた8を29から引くと21。これは7の倍数なので、294は7の倍数である。先ほどの方法では3桁の数字は割るしかなかったが、この方法なら簡単に判定できる。

 さっきの4534845とかいうでかい数でも、4534845→453474→45339→4515→441→42と、同じ操作を繰り返せば7の倍数が判定できる。さっきの3桁区切りよりもだいぶ楽だ。


仕組みはこうだ

 さて、どうしてこのようになるかを説明する。「ある数」が、0〜9の整数aと任意の自然数Aから「10A+a」と表せるとする。このとき、一の位の数に2をかけて、残った数から引いた結果は「A-2a」となる。

 「ある数」10A+aが7の倍数ならば、等式7k=10A+a(kは自然数)が成立して、aについて解くとa=7k-10A。これをA-2aに代入して整理すると21A-14kとなり、14kも21Aも7で割り切れるから、A-2aは7で割り切れる。



 ここからが本題。この説明の7をp、「一の位にかける数2」をnに置き換えれば、あらゆる数の倍数の求め方が見えてくる。



 10n+1(赤字の部分)がpで割り切れれば、A-naはpで割り切れる。従ってnをpに応じて定めることで、どんなpでも同じ方法で倍数判定が行えるというわけだ。そんなnを見つけるのは一見大変そうだが、10n+1の一の位はnが正ならば1、負ならば9になることに着目すればそれほど難しくない。

 例えばp=37なら、一の位を1にするなら3倍(37×3=111)、9にするなら7倍(37×7=259)。10n+1を111にするならn=11、-259とするならn=-26とすればよい。

 なお、nを負とするなら、「一の位に負の数をかけて引く」ので結局足し算をすることに注意が必要だ。


まとめ

 ここまでを整理すると、ある数がpの倍数かどうかを見分けるには次のようにすればいいことが分かる。

  1. 10n+1がpで割り切れるようなnを見つける
  2. ある数の一の位のn倍を、十の位より上の数から引く
  3. 結果がpの倍数かどうか分かれば終了、分からなければ再び2を行う

 方法さえ覚えておけばnを決めるだけで使えるのがうれしいポイント。

 参考までに、代表的な素数pに対するnの例を示しておく。p=3はn=-1で成り立つが、これは冒頭で挙げた「全ての桁を足し合わせる」と同じことになる。


p=5に対しては10n+1が5の倍数となるnが存在しないが、5の倍数はすぐ分かるので問題ない

 nの絶対値が大きいと割り算と同じくらいしんどいが、特に19の倍数などは2をかけて足すだけなので使えそうだ。12065は、12065→1216→133→19で、19の倍数!

 7の倍数とか13の倍数とか分かりにくいわ! とずっと思ってきたが、これで全て解決!

 ……と言いたいところだが、割り算するのとどちらが早いかといわれると微妙なところではある。ただし汎用性はある方法なので、覚えておいて損はないと思う。

制作協力

QuizKnock


Copyright © ITmedia, Inc. All Rights Reserved.

先週の総合アクセスTOP10
  1. 生後2カ月の赤ちゃんにママが話しかけると、次の瞬間かわいすぎる反応が! 「天使」「なんか泣けてきた」と癒やされた人続出
  2. 車検に出した軽トラの荷台に乗っていた生後3日の子猫、保護して育てた3年後…… 驚きの現在に大反響「天使が女神に」「目眩が」
  3. 安達祐実、成人した娘とのレアな2ショット披露 「ママには見えない!」「とても似ててびっくり」と驚きの声
  4. 兄が10歳下の妹に無償の愛を注ぎ続けて2年後…… ママも驚きの光景に「尊すぎてコメントが浮かばねぇ」「最高のにいに」
  5. “これが普通だと思っていた柴犬のお風呂の入れ方が特殊すぎた” 予想外の体勢に「今まで観てきた入浴法で1番かわいい」
  6. 「虎に翼」、新キャラの俳優に注目が集まる 「綺麗な人だね」「まさか日本のドラマでお目にかかれるとは!」
  7. 「葬送のフリーレン」ユーベルのコスプレがまるで実写版 「ジト目が完璧」と27万いいねの好評
  8. お花見でも大活躍する「2杯のドリンクを片手で持つ方法」 目からウロコの裏技に「えぇーーすごーーい」「やってみます!」
  9. 弟から出産祝いをもらったら…… 爆笑の悲劇に「めっちゃおもろ可愛いんだけどw」「笑いこらえるの無理でした」
  10. 3カ月の赤ちゃん、パパに“しーっ”とされた反応が「可愛いぁぁぁぁ」と200万再生 無邪気なお返事としぐさから幸せがあふれ出す
先月の総合アクセスTOP10
  1. フワちゃん、弟の結婚式で卑劣な行為に「席次見て名前覚えたからな」 めでたい場でのひんしゅく行為に「プライベート守ろうよ!」の声
  2. 親が「絶対たぬき」「賭けてもいい」と言い張る動物を、保護して育ててみた結果…… 驚愕の正体が230万表示「こんなん噴くわ!」
  3. 水道検針員から直筆の手紙、驚き確認すると…… メーターボックスで起きた珍事が300万再生「これはびっくり」「生命の逞しさ」
  4. フワちゃん、収録中に見えてはいけない“部位”が映る まさかの露出に「拡大しちゃったじゃん」「またか」の声
  5. スーパーで売れ残っていた半額のカニを水槽に入れてみたら…… 220万再生された涙の結末に「切なくなった」「凄く感動」
  6. 桐朋高等学校、78期卒業生の答辞に賛辞やまず 「只者ではない」「感動のあまり泣いて10回読み直した」
  7. 「これは悲劇」 ヤマザキ“春のパンまつり”シールを集めていたはずなのに…… 途中で気づいたまさかの現実
  8. 「ふざけんな」 宿泊施設に「キャンセル料金を払わなくする方法」が物議 宿泊施設「大目に見てきたが厳格化する」
  9. がん闘病中の見栄晴、20回以上の放射線治療を受け変化が…… 「痛がゆくなって来ました」
  10. 食べ終わったパイナップルの葉を土に植えたら…… 3年半後、目を疑う結果に「もう、ただただ感動です」「ちょっと泣きそう」