■マトリョウシカ素数(その4)

 0から9間での数字が1回ずつ使われる数で,左からk個とった数がkで割り切れる数を紹介したい.

 3816547290

 3/1=3

 38/2=19

 381/3=127

 3816/4=954

 38165/5=7633

 381654/6=63609

 3816547/7=545221

 38165472/8=4770684

 381654729/9=42406081

 3816547290/10=381654729

===================================

 このような性質をもつ数を作ってみよう.整数がxの倍数であるか否かを判定する方法は,中学数学の問題だと思うが,

[1]x=2:1の位が0,2,4,6,8

[2]x=3:各位の数の和が3の倍数

[3]x=4:下2桁が4の倍数(100は4の倍数だから)

[4]x=5:1の位が0,5

[5]x=6:1の位が0,2,4,6,8かつ各位の数の和が3の倍数

[6]x=8:下3桁が8の倍数(1000は8の倍数だから)

[7]x=9:各位の数の和が9の倍数

[8]x=10:1の位が0

 7の倍数であることの判定法はあるにはあるのだが煩わしい.ところで,1001=7・11・13は連続する3つの素数の積になっている不思議な数である.この1001を繰り返して使うと,10進法で7の倍数,13の倍数を判定できる.

 すなわち,整数aがあったとき,1001をどんどん引いていけば最終的には1000以下の整数bになる.この整数bが7の倍数,13の倍数のとき,整数aも7の倍数,13の倍数である.したがって,3桁の整数が7の倍数,13の倍数であることが判定できればよいことになる.

  P=a3・10^2+a2・10+a1

において,

  P=2a3+3a2+a3   (mod7)

  P=a3−a2+a3     (mod11)

  P=−4a3−3a2+a3  (mod13)

[1]3桁の数が7の倍数であるためには2a3+3a2+a3が7の倍数になることが必要十分である.

[2]3桁の数が13の倍数であるためには−4a3−3a2+a3が13の倍数になることが必要十分である.

===================================