Wilson primes of order n: Difference between revisions
Content added Content deleted
(Wilson primes of order n in various BASIC dialents) |
(→{{header|Ruby}}: add Ruby) |
||
Line 1,006: | Line 1,006: | ||
</pre> |
</pre> |
||
=={{header|Ruby}}== |
|||
<lang ruby>require "prime" |
|||
module Modulo |
|||
refine Integer do |
|||
def factorial_mod(m) = (1..self).inject(1){|prod, n| (prod *= n) % m } |
|||
end |
|||
end |
|||
using Modulo |
|||
primes = Prime.each(11000).to_a |
|||
(1..11).each do |n| |
|||
res = primes.select do |pr| |
|||
prpr = pr*pr |
|||
((n-1).factorial_mod(prpr) * (pr-n).factorial_mod(prpr) - (-1)**n) % (prpr) == 0 |
|||
end |
|||
puts "#{n.to_s.rjust(2)}: #{res.inspect}" |
|||
end |
|||
</lang> |
|||
{{out}} |
|||
<pre> 1: [5, 13, 563] |
|||
2: [2, 3, 11, 107, 4931] |
|||
3: [7] |
|||
4: [10429] |
|||
5: [5, 7, 47] |
|||
6: [11] |
|||
7: [17] |
|||
8: [] |
|||
9: [541] |
|||
10: [11, 1109] |
|||
11: [17, 2713] |
|||
</pre> |
|||
=={{header|Rust}}== |
=={{header|Rust}}== |
||
<lang rust>// [dependencies] |
<lang rust>// [dependencies] |