use strict; use warnings; use ntheory 'is_prime'; use List::Util ; sub pp { my $format = ('%' . (my $cw = 1+length max @_) . 'd') x @_; my $width = ".{@{[$cw * int 60/$cw]}}"; (sprintf($format, @_)) =~ s/($width)/$1\n/gr; } my($limit, @ap) = 500; is_prime($_) and is_prime(sum(split '',$_)) and push @ap, $_ for 1..$limit; print @ap . " additive primes < $limit:\n" . pp(@ap);