diff options
| -rwxr-xr-x | challenge-048/roger-bell-west/perl5/ch-1.pl | 17 | ||||
| -rwxr-xr-x | challenge-048/roger-bell-west/perl5/ch-2.pl | 15 | ||||
| -rwxr-xr-x | challenge-048/roger-bell-west/perl5/ch-2a.pl | 22 | ||||
| -rwxr-xr-x | challenge-048/roger-bell-west/perl6/ch-1.p6 | 14 | ||||
| -rwxr-xr-x | challenge-048/roger-bell-west/perl6/ch-2.p6 | 19 |
5 files changed, 87 insertions, 0 deletions
diff --git a/challenge-048/roger-bell-west/perl5/ch-1.pl b/challenge-048/roger-bell-west/perl5/ch-1.pl new file mode 100755 index 0000000000..26d45b9293 --- /dev/null +++ b/challenge-048/roger-bell-west/perl5/ch-1.pl @@ -0,0 +1,17 @@ +#! /usr/bin/perl + +use strict; +use warnings; + +my @list=(1..50); +my $n=0; + +while (scalar @list > 1) { + $n++; + if ($n>$#list) { + $n=0; + } + splice @list,$n,1; +} + +print $list[0],"\n"; diff --git a/challenge-048/roger-bell-west/perl5/ch-2.pl b/challenge-048/roger-bell-west/perl5/ch-2.pl new file mode 100755 index 0000000000..a150104c99 --- /dev/null +++ b/challenge-048/roger-bell-west/perl5/ch-2.pl @@ -0,0 +1,15 @@ +#! /usr/bin/perl + +use strict; +use warnings; + +use POSIX qw(strftime); + +my $format='%m%d%Y'; + +foreach my $d (10957..376199) { + my $u=strftime($format,gmtime($d*86400)); + if ((scalar reverse $u) eq $u) { + print "$u\n"; + } +} diff --git a/challenge-048/roger-bell-west/perl5/ch-2a.pl b/challenge-048/roger-bell-west/perl5/ch-2a.pl new file mode 100755 index 0000000000..100a546b63 --- /dev/null +++ b/challenge-048/roger-bell-west/perl5/ch-2a.pl @@ -0,0 +1,22 @@ +#! /usr/bin/perl + +use strict; +use warnings; + +foreach my $y (2000..2999) { + foreach my $m (1..12) { + foreach my $d (1..31) { + if ($d==31 && ($m==4 || $m==6 || $m==9 || $m==11)) { + next; + } elsif ($m==2 && $d==30) { + next; + } elsif ($m==2 && $d==29 && ($y % 4 != 0 || ($y % 100 == 0 && $y % 400 != 0))) { + next; + } + my $u=sprintf('%02d%02d%04d',$m,$d,$y); + if ($u eq scalar reverse $u) { + print "$u\n"; + } + } + } +} diff --git a/challenge-048/roger-bell-west/perl6/ch-1.p6 b/challenge-048/roger-bell-west/perl6/ch-1.p6 new file mode 100755 index 0000000000..c175608b13 --- /dev/null +++ b/challenge-048/roger-bell-west/perl6/ch-1.p6 @@ -0,0 +1,14 @@ +#! /usr/bin/perl6 + +my @list=(1..50); +my $n=0; + +while (@list.elems > 1) { + $n++; + if ($n>@list.end) { + $n=0; + } + splice @list,$n,1; +} + +say @list[0]; diff --git a/challenge-048/roger-bell-west/perl6/ch-2.p6 b/challenge-048/roger-bell-west/perl6/ch-2.p6 new file mode 100755 index 0000000000..383ef76eea --- /dev/null +++ b/challenge-048/roger-bell-west/perl6/ch-2.p6 @@ -0,0 +1,19 @@ +#! /usr/bin/perl6 + +for 2000..2999 -> $y { + for 1..12 -> $m { + for 1..31 -> $d { + if ($d==31 && ($m==4 || $m==6 || $m==9 || $m==11)) { + next; + } elsif ($m==2 && $d==30) { + next; + } elsif ($m==2 && $d==29 && ($y % 4 != 0 || ($y % 100 == 0 && $y % 400 != 0))) { + next; + } + my $u=sprintf('%02d%02d%04d',$m,$d,$y); + if ($u eq $u.flip) { + say $u; + } + } + } +}
\ No newline at end of file |
