|
> No.2965[元記事へ]
GAIさんへのお返事です。
> n=1→2^1=2→2*1=2
> n=2→2^2=4→4*3=12
> n=3→2^3=8→8*14=112
> n=4→2^4=16→16*132=2112
> n=5→2^5=32→32*691=22112
> n=6→2^6=64→64*1908=122112
> ・・・
>
> これらより一般に1と2から作られる2^nの倍数が必ず存在するが成立しそうです。
考察
n=1のとき、2^1*1=2
n=kのとき、2^kの倍数で1,2からなるk桁の数が存在すると仮定する。
n=k+1のとき、
最上位のさらに左の桁に1を付加した数 1{1,2からなるk桁の数}
最上位のさらに左の桁に2を付加した数 2{1,2からなるk桁の数}
とする(k+1)桁の数を考える。
1{1,2からなるk桁の数}は、10^k=2^k*5^k増えたことなので、2^kの倍数である。
2{1,2からなるk桁の数}は、2*10^k=2^(k+1)*5^k増えたことなので、2^kの倍数である。
差 2{1,2からなるk桁の数} - 1{1,2からなるk桁の数} = 2*10^k-10^k = 2^k*5^k なので、
どちらかは2^(k+1)で割り切れる。
よって、どちらかは2^(k+1)の倍数で(k+1)桁の数となる。
(終り)
例 n=2
n=1のとき、2より、
12=3*2^2で2^2の倍数
22=5*2^2+2で2^2の倍数でない
例 n=3
n=2のとき、12より、
112=14*2^3で2^3の倍数
212=26*2^3+4で2^3の倍数でない
例 n=4
n=3のとき、112より、
1112=69*2^4+8で2^4の倍数でない
2112=132*2^4で2^4の倍数
一般解が機械的に構成できます。
同様な議論で、奇数 1,3,5,7,9 と 0を除く偶数 2,4,6,8 で2^nの倍数が構成できます。
OPTION ARITHMETIC RATIONAL !多桁の整数
LET A=1 !奇数 1,3,5,7,9
LET B=2 !0を除く偶数 2,4,6,8
PRINT "2^1 ×";B/2;"=";B !n=1のとき
LET K=B !1,2からなるk桁の数
FOR N=2 TO 20 !nが2以上のとき
LET M=K+A*10^(N-1) !1{1,2からなるk桁の数}
IF MOD(M,2^N)=0 THEN
LET K=M
ELSE
LET M=K+B*10^(N-1) !2{1,2からなるk桁の数}
IF MOD(M,2^N)=0 THEN
LET K=M
ELSE
PRINT "論理エラー"
STOP
END IF
END IF
PRINT "2^";STR$(N); " ×";M/2^N; "=";M
NEXT N
END
|
|