Find adjacent primes which differ by a square integer: Difference between revisions

→‎{{header|Raku}}: Add a Raku example. Sig. I guess we're going to get 30 trivial variations on prime gap tasks now...
(add gwbasic)
(→‎{{header|Raku}}: Add a Raku example. Sig. I guess we're going to get 30 trivial variations on prime gap tasks now...)
Line 208:
997877 997813 diff = 64
done...
</pre>
 
=={{header|Raku}}==
<lang perl6>use Math::Primesieve;
 
my $iterator = Math::Primesieve::iterator.new;
my $limit = 1e6;
my @squares = (8,10).map: *²;
my $last = 2;
my @gaps;
 
loop {
my $this = (my $p = $iterator.next) - $last;
@gaps[$this].push: $last;
last if $p > $limit;
$last = $p;
}
 
for @gaps.pairs.grep: { (.key ∈ @squares) && .value.defined } -> $p {
say "\nGap {$p.key}:";
put join "\n", $p.value.batch(4)».map({ "($_, {$_+ $p.key})" })».join(', ');
}</lang>
{{out}}
<pre>Gap 64:
(89689, 89753), (107377, 107441), (288583, 288647), (367957, 368021)
(381103, 381167), (400759, 400823), (445363, 445427), (623107, 623171)
(625699, 625763), (637003, 637067), (710713, 710777), (725209, 725273)
(779413, 779477), (801883, 801947), (803749, 803813), (821677, 821741)
(832519, 832583), (844777, 844841), (883807, 883871), (912103, 912167)
(919447, 919511), (954763, 954827), (981823, 981887), (997813, 997877)
 
Gap 100:
(396733, 396833), (838249, 838349)
</pre>
 
10,327

edits