前回は循環小数の循環節の長さつまり位数をしるのにカードシャッフルだけでやるにはどうしたらいいかというトピックだった
循環節の長さと剰余の置換がシンクロすることを利用していた
商でなくて直接余りの数列を計算することによって循環節の長さをだすという裏技?だった
でもせっかくなので
循環節自体を求めたい
課題
「剰余の数列を循環節の数列に変換」
まずシャッフルでわりだした剰余の数列をもとのmod.pでかける
つぎにそれを10でモドつまりしも一桁をとる
X*p≡ a (mod.10)
例
1/7=
[1,4,2,8,5,7]
(3,2,6,4,5,1)
3*7=21=1
2*7=14=4
6*7=42=2
4*7=28=8
5*7=35=5
1*7=07=7
このようにすると素数の分母の十進小数展開とおなじになる
じつはこの方法には難があってそうならない素数の場合があり
具体的には
7,13,17,23,37,43,47,53,67,97,,
はそのままでよいが
そのままではだめな素数の
11,19,29,31,41,59,61,71,,,
は9をかけてから10でモドスルとよい
なぜそうなるかはわかりませんが
分母が合成数つまり素数の積の場合はまたかわっていて
63,77,11*13,9*13,9*17,11*17,4*17,,
ならばよくて
7*13,7*37,11*19,2*17,,,
これらがだめ
ヒントは
1/19=
(10,5,12,6,3,11,15,17,18,9,14,7,13,16,8,4,2,1)
[0,5,2,6,3,1,5,7,8,9,4,7,3,6,8,4,2,1,]
そのまましも一桁にでてるんです
そういう組み合わせがあるのでしょう?
0 件のコメント:
コメントを投稿