From 5025124332db897de74e73a3806eb135ec1b2dcc Mon Sep 17 00:00:00 2001 From: Dieter Dobbelaere Date: Sun, 18 Oct 2020 12:43:05 +0200 Subject: Add console interface. --- challenge-082/ddobbelaere/perl/ch-1.pl | 6 ++++++ challenge-082/ddobbelaere/perl/ch-2.pl | 6 ++++++ 2 files changed, 12 insertions(+) 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 () { next if /^#/; /\(([^\)]*)\) \(([^\)]*)\)/; @@ -56,6 +57,11 @@ while () { @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 () { next if /^#/; /(\S*)\s*(\S*)\s*(\S*)\s*([01])/; @@ -65,6 +66,11 @@ while () { $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 -- cgit