aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-044/simon-proctor/raku/ch-2.p613
1 files changed, 7 insertions, 6 deletions
diff --git a/challenge-044/simon-proctor/raku/ch-2.p6 b/challenge-044/simon-proctor/raku/ch-2.p6
index 551c8ca0aa..3d87ee3192 100644
--- a/challenge-044/simon-proctor/raku/ch-2.p6
+++ b/challenge-044/simon-proctor/raku/ch-2.p6
@@ -2,16 +2,17 @@
use v6.d;
-multi sub recur( Int() $v where * %% 2 ) {
- return recur( $v / 2 ), " * 2";
+multi recur(1) {
+ return "1";
}
-multi sub recur( Int() $v ) {
- return "((", recur( $v - 1 ), ") + 1)";
+multi recur( \v where * %% 2 ) {
+ return recur( v div 2 ), " * 2";
}
-multi sub recur($ where * ~~ 1) {
- return "1";
+multi recur( \v ) {
+ return "((", recur( v - 1 ), ") + 1)";
}
+
say "{recur( 100 ).flat.join('')} == 100";