2進数の倍数                               戻る

 当HPがいつもお世話になっているHN「GAI」さんからの出題です。
                                      (平成25年1月17日付け)

 以下は成り立つのか?

 2の倍数:10,100.…
 3の倍数:111,1011.…
 4の倍数:100,1100,…
 5の倍数:10,100,…
 6の倍数:10110,11010,…
 7の倍数:111111,11111100,…
 8の倍数:1000,10000,…
 9の倍数:111111111,1111111110,…
 10の倍数:10,110,…
 11の倍数:11,1111,…
 12の倍数:11100,111000,…
 13の倍数:111111,1111110,…
 14の倍数:1111110,11111100,…
  ・・・・・・・・・・・

というように、各0と1から構成される倍数が存在している。

 そこで、プログラムを得意とされる方で30程度までで、0と1からなる倍数のものをそれぞ
れ3個ずつくらい見つけてほしい。

 また、これから、

  ”全ての自然数N対して必ず0と1からなるNの倍数が存在する

という命題は成立できるのか、その証明が可能か示してほしい。
















(答) らすかるさんが考察されました。(平成25年1月17日付け)

 Nの素因数が2と5だけの場合は明らか。

 Nが素因数2、5を含まない場合、1/Nは純循環小数となり、

   1/N=m/(10n-1)  すなわち、 mN=10n-1

と表せる。右辺は9で割り切れるので、Nが3で割り切れない場合、mが9で割り切れるから、

Nをm/9倍すれば、111…1という数になる。

 Nが3で割り切れる場合は、N=3p×M (Mは3で割り切れない自然数)とすれば、Mの倍数

は111…1という数になり、この桁数を3p倍に増やせばNで割り切れる。

 従って、Nが素因数2、5を含まない場合、Nで割り切れる111…1 という全桁が1の数が存

在する。Nが素因数2または5を含む場合は、素因数2、5を除外して111…1と表して、それを

10n(nは素因数2、5の多い方)倍すれば条件を満たす。


例 N=43 のとき

   1/N=0.[023255813953488372093] (カッコ内の循環)
     =23255813953488372093/999999999999999999999

    23255813953488372093/9=2583979328165374677  なので

   2583979328165374677×43=111111111111111111111

例 N=1107=33×41 のとき

   1/41=0.[02439]=2439/99999

    2439/9=271 より、 271×41=11111

   11111は41で割り切れるので、

      111…(15桁)…11は、3×41で割り切れ、
      111…(45桁)…11は、32×41で割り切れ、
      111…(135桁)…11は、33×41で割り切れる。