RosettaCodeData/Task/Fortunate-numbers/Raku/fortunate-numbers.raku
2023-07-01 13:44:08 -04:00

11 lines
388 B
Raku

my @primorials = [\*] grep *.is-prime, ^;
say display :title("First 50 distinct fortunate numbers:\n"),
(squish sort @primorials[^75].hyper.map: -> $primorial {
(2..).first: (* + $primorial).is-prime
})[^50];
sub display ($list, :$cols = 10, :$fmt = '%6d', :$title = "{+$list} matching:\n") {
cache $list;
$title ~ $list.batch($cols)».fmt($fmt).join: "\n"
}