aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-261/wambash/raku/ch-1.raku18
-rw-r--r--challenge-261/wambash/raku/ch-2.raku19
2 files changed, 37 insertions, 0 deletions
diff --git a/challenge-261/wambash/raku/ch-1.raku b/challenge-261/wambash/raku/ch-1.raku
new file mode 100644
index 0000000000..3d4637d363
--- /dev/null
+++ b/challenge-261/wambash/raku/ch-1.raku
@@ -0,0 +1,18 @@
+#!/usr/bin/env raku
+
+sub element-digit-sum (+@int) {
+ @int.sum - [+] @int.map: |*.comb
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is element-digit-sum(1,2,3,45),36;
+ is element-digit-sum(1,12,3),9;
+ is element-digit-sum(1...4),0;
+ is element-digit-sum(236, 416, 336, 350), 1296;
+ done-testing;
+}
+
+multi MAIN (+ints) {
+ say element-digit-sum ints
+}
diff --git a/challenge-261/wambash/raku/ch-2.raku b/challenge-261/wambash/raku/ch-2.raku
new file mode 100644
index 0000000000..a57ec88c67
--- /dev/null
+++ b/challenge-261/wambash/raku/ch-2.raku
@@ -0,0 +1,19 @@
+#!/usr/bin/env raku
+
+sub multiply-by-two (+ints,:$start) {
+ $start, * * 2 ... *
+ andthen .first: { $_ ∉ ints }
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is multiply-by-two(5,3,6,1,12):3start, 24;
+ is multiply-by-two(1,2,4,3):1start, 8;
+ is multiply-by-two(1,2,4,8,16):1start, 32;
+ is multiply-by-two(5,6,7):2start, 2;
+ done-testing;
+}
+
+multi MAIN ( +ints,Int :$start) {
+ say multiply-by-two ints».Int,:start($start.Int)
+}