aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2019-11-16 01:37:46 +0000
committerGitHub <noreply@github.com>2019-11-16 01:37:46 +0000
commit01317aed7235ed74e0a74e2e114b1470931a322c (patch)
tree5ce720246cf7283d52fb9b5ba396365db2a46282
parentbe77b7bd5ee638e9977022982f6c072c3d21e0ed (diff)
parent192bef7ef3f45e388a5345331d93a69fe54bf41d (diff)
downloadperlweeklychallenge-club-01317aed7235ed74e0a74e2e114b1470931a322c.tar.gz
perlweeklychallenge-club-01317aed7235ed74e0a74e2e114b1470931a322c.tar.bz2
perlweeklychallenge-club-01317aed7235ed74e0a74e2e114b1470931a322c.zip
Merge pull request #933 from Firedrake/rogerbw-challenge-034-B
Answers to challenge #34 part 1
-rwxr-xr-xchallenge-034/roger-bell-west/perl5/ch-1.pl36
-rwxr-xr-xchallenge-034/roger-bell-west/perl6/ch-1.p612
2 files changed, 48 insertions, 0 deletions
diff --git a/challenge-034/roger-bell-west/perl5/ch-1.pl b/challenge-034/roger-bell-west/perl5/ch-1.pl
new file mode 100755
index 0000000000..0aed9f3564
--- /dev/null
+++ b/challenge-034/roger-bell-west/perl5/ch-1.pl
@@ -0,0 +1,36 @@
+#! /usr/bin/perl
+
+use strict;
+use warnings;
+
+use List::Util qw(sum);
+
+my @data=map {rand()} (1..10);
+
+my @ma=map {sum(@data[$_-1..$_+1])/3} (1..$#data-1);
+
+unshift @ma,'';
+push @ma,'';
+
+my @out=map {[$data[$_],$ma[$_]]} (0..$#data);
+
+print tabular(\@out);
+
+sub tabular {
+ my $d=shift;
+ my @columnlength;
+ foreach my $row (@{$d}) {
+ foreach my $colno (0..$#{$row}) {
+ if (!defined($columnlength[$colno]) ||
+ $columnlength[$colno] < length($row->[$colno] || '')) {
+ $columnlength[$colno]=length($row->[$colno]);
+ }
+ }
+ }
+ my $format=join(' ',map {"%${_}s"} @columnlength);
+ my $result='';
+ foreach my $row (@{$d}) {
+ $result .= sprintf($format,@{$row})."\n";
+ }
+ return $result;
+}
diff --git a/challenge-034/roger-bell-west/perl6/ch-1.p6 b/challenge-034/roger-bell-west/perl6/ch-1.p6
new file mode 100755
index 0000000000..323b913ee7
--- /dev/null
+++ b/challenge-034/roger-bell-west/perl6/ch-1.p6
@@ -0,0 +1,12 @@
+#! /usr/bin/perl6
+
+my @data=map {rand}, (1..10);
+
+my @ma=map {sum(@data[$_-1..$_+1])/3}, (1..@data.end-1);
+
+unshift @ma,NaN;
+push @ma,NaN;
+
+my @out=map {[@data[$_],@ma[$_]]}, (0..@data.end);
+
+say @out.perl;