aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDieter Dobbelaere <dieter.dobbelaere@gmail.com>2020-10-18 12:43:05 +0200
committerDieter Dobbelaere <dieter.dobbelaere@gmail.com>2020-10-18 12:43:05 +0200
commit5025124332db897de74e73a3806eb135ec1b2dcc (patch)
tree63f62fade36bf24d16176de5be348b47cbd81acf
parentc85d8f2d6511cf9d5d5aeffa65dae12ec5b4511b (diff)
downloadperlweeklychallenge-club-5025124332db897de74e73a3806eb135ec1b2dcc.tar.gz
perlweeklychallenge-club-5025124332db897de74e73a3806eb135ec1b2dcc.tar.bz2
perlweeklychallenge-club-5025124332db897de74e73a3806eb135ec1b2dcc.zip
Add console interface.
-rw-r--r--challenge-082/ddobbelaere/perl/ch-1.pl6
-rw-r--r--challenge-082/ddobbelaere/perl/ch-2.pl6
2 files changed, 12 insertions, 0 deletions
diff --git a/challenge-082/ddobbelaere/perl/ch-1.pl b/challenge-082/ddobbelaere/perl/ch-1.pl
index 1c7cca322f..a133d27921 100644
--- a/challenge-082/ddobbelaere/perl/ch-1.pl
+++ b/challenge-082/ddobbelaere/perl/ch-1.pl
@@ -46,6 +46,7 @@ sub common_factors {
grep {!($N%$_ || $M%$_)} (1..$M);
}
+# Tests.
while (<DATA>) {
next if /^#/;
/\(([^\)]*)\) \(([^\)]*)\)/;
@@ -56,6 +57,11 @@ while (<DATA>) {
@expected ~~ @actual || die "Error for (M,N)=($M,$N). Expected @expected, got @actual.";
}
+# Console interface.
+if (@ARGV) {
+ say join ', ', common_factors(@ARGV);
+}
+
__DATA__
# Test data.
(12, 18) (1, 2, 3, 6)
diff --git a/challenge-082/ddobbelaere/perl/ch-2.pl b/challenge-082/ddobbelaere/perl/ch-2.pl
index 300fe8567e..cbb9057ad6 100644
--- a/challenge-082/ddobbelaere/perl/ch-2.pl
+++ b/challenge-082/ddobbelaere/perl/ch-2.pl
@@ -57,6 +57,7 @@ sub can_interleave {
|| (length $B && substr($B,-1) eq substr($C,-1) && can_interleave($A, substr($B,0,-1), substr($C,0,-1)));
}
+# Tests.
while (<DATA>) {
next if /^#/;
/(\S*)\s*(\S*)\s*(\S*)\s*([01])/;
@@ -65,6 +66,11 @@ while (<DATA>) {
$expected == can_interleave($A, $B, $C) || die "Error for (A,B,C)=$A,$B,$C. Expected $expected.";
}
+# Console interface.
+if (@ARGV) {
+ say 0+can_interleave(@ARGV);
+}
+
__DATA__
# Test data of the form $A $B $C $output.
XY X XXY 1