aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xchallenge-153/2colours/raku/ch-1.raku7
-rwxr-xr-xchallenge-153/2colours/raku/ch-2.raku9
2 files changed, 16 insertions, 0 deletions
diff --git a/challenge-153/2colours/raku/ch-1.raku b/challenge-153/2colours/raku/ch-1.raku
new file mode 100755
index 0000000000..dd18cc23b4
--- /dev/null
+++ b/challenge-153/2colours/raku/ch-1.raku
@@ -0,0 +1,7 @@
+#!/usr/bin/env raku
+
+sub left-factorial($n) {
+ [+] (^$n).map({[*] (1..$_)})
+}
+
+(1..10).map(&left-factorial).join(', ').say;
diff --git a/challenge-153/2colours/raku/ch-2.raku b/challenge-153/2colours/raku/ch-2.raku
new file mode 100755
index 0000000000..b897c37674
--- /dev/null
+++ b/challenge-153/2colours/raku/ch-2.raku
@@ -0,0 +1,9 @@
+#!/usr/bin/env raku
+
+my $n = prompt('Input: $n = ').Int;
+my @digits = $n ~~ m:g/\d/;
+my @factorials = @digits.map({[*] (1..$_)});
+my $is-equal = @factorials.sum == $n;
+say "Output: {$is-equal.Int}";
+say "Since {@digits >>~>> '!' andthen .join(' + ')} => {@factorials.join(' + ')} {$is-equal ?? '=' !! '<>'} $n";
+