Largest difference between adjacent primes: Difference between revisions
Content added Content deleted
(Fixed task description.) |
Thundergnat (talk | contribs) (→{{header|Raku}}: Add a faster version) |
||
Line 11: | Line 11: | ||
given max (^10**$n).grep(&is-prime).rotor(2=>-1).map({.[1]-.[0],$_}) |
given max (^10**$n).grep(&is-prime).rotor(2=>-1).map({.[1]-.[0],$_}) |
||
}</lang> |
}</lang> |
||
{{out}} |
|||
<pre>Largest prime gap up to 100: 8 - between 89 and 97. |
<pre>Largest prime gap up to 100: 8 - between 89 and 97. |
||
Largest prime gap up to 1000: 20 - between 887 and 907. |
Largest prime gap up to 1000: 20 - between 887 and 907. |
||
Line 19: | Line 19: | ||
Largest prime gap up to 10000000: 154 - between 4652353 and 4652507. |
Largest prime gap up to 10000000: 154 - between 4652353 and 4652507. |
||
Largest prime gap up to 100000000: 220 - between 47326693 and 47326913.</pre> |
Largest prime gap up to 100000000: 220 - between 47326693 and 47326913.</pre> |
||
Or, significantly faster using a module: |
|||
<lang perl6>use Math::Primesieve; |
|||
my $sieve = Math::Primesieve.new; |
|||
for 2..8 -> $n { |
|||
printf "Largest prime gap up to {10 ** $n}: %d - between %d and %d.\n", .[0], |.[1] |
|||
given max $sieve.primes(10 ** $n).rotor(2=>-1).map({.[1]-.[0],$_}) |
|||
}</lang> |
|||
Same output |
|||
=={{header|Ring}}== |
=={{header|Ring}}== |