diff options
| author | Roger Bell_West <roger@firedrake.org> | 2019-08-22 13:57:42 +0100 |
|---|---|---|
| committer | Roger Bell_West <roger@firedrake.org> | 2019-08-22 13:57:42 +0100 |
| commit | fadd7624ccfea612447ecaf36ddf077f2f71d61f (patch) | |
| tree | 89ee66bd7573bb0f1681eb01dab21164788a26b5 /challenge-022 | |
| parent | 5fc80ca35a61b7e84529f422ba4101ed3aae9e70 (diff) | |
| download | perlweeklychallenge-club-fadd7624ccfea612447ecaf36ddf077f2f71d61f.tar.gz perlweeklychallenge-club-fadd7624ccfea612447ecaf36ddf077f2f71d61f.tar.bz2 perlweeklychallenge-club-fadd7624ccfea612447ecaf36ddf077f2f71d61f.zip | |
Challenge 22 part 1
Diffstat (limited to 'challenge-022')
| -rwxr-xr-x | challenge-022/roger-bell-west/perl5/ch-1.pl | 28 | ||||
| -rwxr-xr-x | challenge-022/roger-bell-west/perl6/ch-1.p6 | 16 |
2 files changed, 44 insertions, 0 deletions
diff --git a/challenge-022/roger-bell-west/perl5/ch-1.pl b/challenge-022/roger-bell-west/perl5/ch-1.pl new file mode 100755 index 0000000000..9f1f55566e --- /dev/null +++ b/challenge-022/roger-bell-west/perl5/ch-1.pl @@ -0,0 +1,28 @@ +#! /usr/bin/perl + +use strict; +use warnings; + +# Arbitrary cap +my $cap=110; + +my $limit=6; + +# Sieve of Eratosthenes to give us a prime list +my %n=map {$_ => 1} (2..$cap); +foreach my $f (2..int(sqrt($cap))) { + map {($f<$_ && $_%$f == 0)?delete $n{$_}:0} keys %n; +} +my @p=sort {$a <=> $b} (keys %n); +my %p=map {$_ => 1} @p; + +foreach my $p (@p) { + my $q=$p+6; + if (exists $p{$q}) { + print "$p, $q\n"; + $limit--; + unless ($limit) { + last; + } + } +} diff --git a/challenge-022/roger-bell-west/perl6/ch-1.p6 b/challenge-022/roger-bell-west/perl6/ch-1.p6 new file mode 100755 index 0000000000..31956f6bd3 --- /dev/null +++ b/challenge-022/roger-bell-west/perl6/ch-1.p6 @@ -0,0 +1,16 @@ +#! /usr/bin/perl6 + +my $limit=6; + +for (2..Inf) -> $p { + if $p.is-prime { + my $q=$p+6; + if $q.is-prime { + say "$p, $q"; + $limit--; + unless ($limit) { + last; + } + } + } +} |
