p進法での循環小数
!真分数1/11の6進法での循環小数 0.{0313452421}(6) を求めてみる。 ! !整数部分 ! =0+1/11 ※帯分数を求める !小数部分 ! 6*1/11=0+6/11 ※分数の部分を6倍して、帯分数を求める ! 6*6/11=3+3/11 ! 6*3/11=1+7/11 ! 6*7/11=3+9/11 ! 6*9/11=4+10/11 ! 6*10/11=5+5/11 ! 6*5/11=2+8/11 ! 6*8/11=4+4/11 ! 6*4/11=2+2/11 ! 6*2/11=1+1/11 ※分数の部分の分子が1になったので、循環する ! : ! : ! !この計算過程で、分数の部分の分子が1列目に相当する。 ! !2列目は、2/11。3列目は、3/11。 ... 10列目は、10/11。
LET N=10 !カードの枚数 ※偶数
DIM c(N) !N枚のカードの順番 ※c(1)は1番目、c(2)は2番目、...
PRINT " 0 回目"; FOR k=1 TO N !最初は整列しておく LET c(k)=k !※カードの数字とは別に連番を振る PRINT c(k); NEXT k PRINT
FOR i=1 TO N !シャッフル PRINT i;"回目"; !回数 FOR k=1 TO N LET c(k)=MOD((N/2+1)*c(k),N+1) PRINT c(k); NEXT k PRINT NEXT i
END
|