2022年7月8日金曜日

220708

Ruby


素数を生成する漸化式(1)

2008年Eric Rowlandにより、以下の数列は1または素数しか現れないことが証明されている。

def A106108(n)
  ary = [7]
  (2..n).each{|i| ary << ary[-1] + i.gcd(ary[-1])}
  ary
end

def A132199(n)
  ary = A106108(n + 1)
  (1..n).map{|i| ary[i] - ary[i - 1]}
end

n = 100
p A132199(n)

出力結果
[1, 1, 1, 5, 3, 1, 1, 1, 1, 11, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 23, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 47, 3, 1, 5, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 101]

0 件のコメント:

コメントを投稿

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