2014年8月24日日曜日

140824

Ruby


循環節

dを「2からnまでの2でも5でも割り切れない整数」とする。
n = 20 のとき、d,1/dの循環節の長さ,1/dの循環節を出力せよ。

n = 20
(2..n).each{|d|
if d % 2 != 0 && d % 5 != 0
  cnt = 1
  x = (10 ** cnt) - 1
  while x % d != 0
    cnt += 1
    x = (10 ** cnt) - 1
  end
  puts "#{d}  #{(x / d).to_s.size}  #{(x / d).to_s}"
end
}

出力結果
3  1  3
7  6  142857
9  1  1
11  1  9
13  5  76923
17  15  588235294117647
19  17  52631578947368421

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。