diff options
| -rw-r--r-- | challenge-044/simon-proctor/raku/ch-2.p6 | 13 |
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"; |
