aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Krňávek <Jan.Krnavek@gmail.com>2025-08-03 21:44:13 +0200
committerJan Krňávek <Jan.Krnavek@gmail.com>2025-08-03 21:44:13 +0200
commite2f3b76d29e9f2e51a1f55d7ddb66b42c89dc493 (patch)
tree10d9f67a20ffd557d993d7d34692f763cb29c1e8
parentd904375e9cf226c2c0465204e98b35fadf52be91 (diff)
downloadperlweeklychallenge-club-e2f3b76d29e9f2e51a1f55d7ddb66b42c89dc493.tar.gz
perlweeklychallenge-club-e2f3b76d29e9f2e51a1f55d7ddb66b42c89dc493.tar.bz2
perlweeklychallenge-club-e2f3b76d29e9f2e51a1f55d7ddb66b42c89dc493.zip
solutions week 332
-rw-r--r--challenge-332/wambash/raku/ch-1.raku18
-rw-r--r--challenge-332/wambash/raku/ch-2.raku21
2 files changed, 39 insertions, 0 deletions
diff --git a/challenge-332/wambash/raku/ch-1.raku b/challenge-332/wambash/raku/ch-1.raku
new file mode 100644
index 0000000000..4770c8ab7b
--- /dev/null
+++ b/challenge-332/wambash/raku/ch-1.raku
@@ -0,0 +1,18 @@
+#!/usr/bin/env raku
+
+sub binary-date ($date) {
+ $date
+ andthen .subst: /\d+/, {.Int.base: 2 }, :g
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is binary-date('2025-07-26'), '11111101001-111-11010';
+ is binary-date('2000-02-02'), '11111010000-10-10';
+ is binary-date('2024-12-31'), '11111101000-1100-11111';
+ done-testing;
+}
+
+multi MAIN ($date) {
+ say binary-date $date;
+}
diff --git a/challenge-332/wambash/raku/ch-2.raku b/challenge-332/wambash/raku/ch-2.raku
new file mode 100644
index 0000000000..d4f77d9173
--- /dev/null
+++ b/challenge-332/wambash/raku/ch-2.raku
@@ -0,0 +1,21 @@
+#!/usr/bin/env raku
+
+sub odd-letters ($str) {
+ $str
+ andthen .comb
+ andthen .Bag
+ andthen .values
+ andthen so .none %% 2
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is odd-letters('weekly'), False;
+ is odd-letters('perl'), True;
+ is odd-letters('challenge'), False;
+ done-testing;
+}
+
+multi MAIN ($str) {
+ say odd-letters $str;
+}