diff options
| author | Jan Krňávek <Jan.Krnavek@gmail.com> | 2021-03-30 11:19:58 +0200 |
|---|---|---|
| committer | Jan Krňávek <Jan.Krnavek@gmail.com> | 2021-03-30 11:19:58 +0200 |
| commit | b43d72911e017d17725b75a767efca547aa550ce (patch) | |
| tree | 96a9db6618c47cb644aeeeeb3c49f738cee8e0fd | |
| parent | 39e8b57d63e219b0c014efac90d6eab40c689cda (diff) | |
| download | perlweeklychallenge-club-b43d72911e017d17725b75a767efca547aa550ce.tar.gz perlweeklychallenge-club-b43d72911e017d17725b75a767efca547aa550ce.tar.bz2 perlweeklychallenge-club-b43d72911e017d17725b75a767efca547aa550ce.zip | |
solutions week 106
| -rw-r--r-- | challenge-106/wambash/raku/ch-1.raku | 21 | ||||
| -rw-r--r-- | challenge-106/wambash/raku/ch-2.raku | 20 |
2 files changed, 41 insertions, 0 deletions
diff --git a/challenge-106/wambash/raku/ch-1.raku b/challenge-106/wambash/raku/ch-1.raku new file mode 100644 index 0000000000..ac088c0eeb --- /dev/null +++ b/challenge-106/wambash/raku/ch-1.raku @@ -0,0 +1,21 @@ +#!/usr/bin/env raku + +sub maximum-gap (+@n) { + @n + andthen .sort + andthen .cache + andthen .skip Z- $_ + andthen .max max 0 +} + +multi MAIN ( *@n ) { + say maximum-gap @n +} + +multi MAIN (Bool :$test!) { + use Test; + is maximum-gap(2,9,3,5), 4; + is maximum-gap(1,3,8,2,0), 5; + is maximum-gap(5),0; + done-testing; +} diff --git a/challenge-106/wambash/raku/ch-2.raku b/challenge-106/wambash/raku/ch-2.raku new file mode 100644 index 0000000000..f4b67d14df --- /dev/null +++ b/challenge-106/wambash/raku/ch-2.raku @@ -0,0 +1,20 @@ +#!/usr/bin/env raku + +sub decimal-string ($n, $d) { + $n/$d + andthen .base-repeating + andthen .[0] ~ ( if .[1] -> $_ { .fmt: '(%s)' } ) +} + +multi MAIN (Bool :$test!) { + use Test; + is decimal-string(1, 3), '0.(3)'; + is decimal-string(1, 2), '0.5'; + is decimal-string(5,66), '0.0(75)'; + is decimal-string(3, 7), '0.(428571)'; + done-testing; +} + +multi MAIN ($n, $d) { + say decimal-string $n, $d +} |
