Miller–Rabin primality test: Difference between revisions
Content added Content deleted
(→{{header|Ruby}}: Update to 2.5+ and tidy) |
|||
Line 4,402: | Line 4,402: | ||
end |
end |
||
g.times do |
g.times do |
||
a = 2 + rand(n - |
a = 2 + rand(n - 2) |
||
x = a.pow(d, n) # x = (a**d) % n |
x = a.pow(d, n) # x = (a**d) % n |
||
next if x == 1 || x == n - 1 |
next if x == 1 || x == n - 1 |
||
Line 4,429: | Line 4,429: | ||
puts miller_rabin_prime?(103130593592068072608023213244858971741946977638988649427937324034014356815504971087381663169829571046157738503075005527471064224791270584831779395959349442093395294980019731027051356344056416276026592333932610954020105156667883269888206386119513058400355612571198438511950152690467372712488391425876725831041,1000) |
puts miller_rabin_prime?(103130593592068072608023213244858971741946977638988649427937324034014356815504971087381663169829571046157738503075005527471064224791270584831779395959349442093395294980019731027051356344056416276026592333932610954020105156667883269888206386119513058400355612571198438511950152690467372712488391425876725831041,1000) |
||
</lang> |
</lang> |
||
===Deterministic for integers < 3,317,044,064,679,887,385,961,981=== |
===Deterministic for integers < 3,317,044,064,679,887,385,961,981=== |
||
It extends '''class Integer''' to make it simpler to use. |
It extends '''class Integer''' to make it simpler to use. |