diff options
| author | Simon Proctor <simon.proctor@zpg.co.uk> | 2020-01-20 11:56:06 +0000 |
|---|---|---|
| committer | Simon Proctor <simon.proctor@zpg.co.uk> | 2020-01-20 11:56:06 +0000 |
| commit | 7f7cf93d3e2c5acc32cf4459b77af8b82d64a615 (patch) | |
| tree | d478c921884003ca81a6fe073a130681c08c0264 /challenge-044/simon-proctor | |
| parent | 6d5027a7cbf1bc0c53b0522152e662fff5def033 (diff) | |
| download | perlweeklychallenge-club-7f7cf93d3e2c5acc32cf4459b77af8b82d64a615.tar.gz perlweeklychallenge-club-7f7cf93d3e2c5acc32cf4459b77af8b82d64a615.tar.bz2 perlweeklychallenge-club-7f7cf93d3e2c5acc32cf4459b77af8b82d64a615.zip | |
Using recursion back from 100 to 1 to get the 8 steps needed to get from 1 to 100
Diffstat (limited to 'challenge-044/simon-proctor')
| -rw-r--r-- | challenge-044/simon-proctor/raku/ch-2.p6 | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/challenge-044/simon-proctor/raku/ch-2.p6 b/challenge-044/simon-proctor/raku/ch-2.p6 new file mode 100644 index 0000000000..551c8ca0aa --- /dev/null +++ b/challenge-044/simon-proctor/raku/ch-2.p6 @@ -0,0 +1,17 @@ +#!/usr/bin/env perl6 + +use v6.d; + +multi sub recur( Int() $v where * %% 2 ) { + return recur( $v / 2 ), " * 2"; +} + +multi sub recur( Int() $v ) { + return "((", recur( $v - 1 ), ") + 1)"; +} + +multi sub recur($ where * ~~ 1) { + return "1"; +} + +say "{recur( 100 ).flat.join('')} == 100"; |
