Anaprimes: Difference between revisions
Content added Content deleted
SqrtNegInf (talk | contribs) (Added Perl) |
|||
Line 820: | Line 820: | ||
real 4m19.653s user 4m17.515s sys 0m2.134s</pre> |
real 4m19.653s user 4m17.515s sys 0m2.134s</pre> |
||
=={{header|Perl}}== |
|||
{{libheader|ntheory}} |
|||
<syntaxhighlight lang="perl" line>use v5.36; |
|||
use ntheory 'primes'; |
|||
use List::Util 'max'; |
|||
use Lingua::EN::Numbers qw(num2en); |
|||
for my $l (3..8) { |
|||
my %p; |
|||
for ( grep { $_ > 10**($l-1) && $_ < 10**$l } @{primes(1,1e8)} ) { |
|||
my $k = join '', sort {$a <=> $b} split //, "$_"; |
|||
$p{$k} .= "$_ "; |
|||
} |
|||
my $m = max map { length $p{$_} } keys %p; |
|||
printf "Largest group of anaprimes before %s: %d members.\n", num2en(10**($l+1)), $m/($l+1); |
|||
for my $k (sort grep { $m == length $p{$_} } keys %p) { |
|||
$p{$k} =~ /^(\d+) .* (\d+) $/; |
|||
say "First: $1 Last: $2"; |
|||
} |
|||
say ''; |
|||
}</syntaxhighlight> |
|||
{{out}} |
|||
<pre>Largest group of anaprimes before ten thousand: 4 members. |
|||
First: 149 Last: 941 |
|||
First: 179 Last: 971 |
|||
First: 379 Last: 937 |
|||
Largest group of anaprimes before one hundred thousand: 11 members. |
|||
First: 1237 Last: 7321 |
|||
First: 1279 Last: 9721 |
|||
Largest group of anaprimes before one million: 39 members. |
|||
First: 13789 Last: 98731 |
|||
Largest group of anaprimes before ten million: 148 members. |
|||
First: 123479 Last: 974213 |
|||
Largest group of anaprimes before one hundred million: 731 members. |
|||
First: 1235789 Last: 9875321 |
|||
Largest group of anaprimes before one hundred million: 4333 members. |
|||
First: 12345769 Last: 97654321 |
|||
Largest group of anaprimes before one billion: 26519 members. |
|||
First: 102345697 Last: 976542103</pre> |
|||
=={{header|Phix}}== |
=={{header|Phix}}== |