diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2022-01-09 10:09:04 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-01-09 10:09:04 +0000 |
| commit | 308676eaa1c2e44f467c1c64fa4731f88576b7b2 (patch) | |
| tree | 31d5fff5bfec0fd83400ce7019b071ff4e68ddcf /challenge-146 | |
| parent | f2e062cd585f30ecbcf0257e72ccb8f0c82136a7 (diff) | |
| parent | 2a8a2434896d98d8f59ff739fab15405a191f76b (diff) | |
| download | perlweeklychallenge-club-308676eaa1c2e44f467c1c64fa4731f88576b7b2.tar.gz perlweeklychallenge-club-308676eaa1c2e44f467c1c64fa4731f88576b7b2.tar.bz2 perlweeklychallenge-club-308676eaa1c2e44f467c1c64fa4731f88576b7b2.zip | |
Merge pull request #5485 from wambash/challenge-week-146
solutions week 146
Diffstat (limited to 'challenge-146')
| -rw-r--r-- | challenge-146/wambash/raku/ch-1.raku | 22 | ||||
| -rw-r--r-- | challenge-146/wambash/raku/ch-2.raku | 27 |
2 files changed, 49 insertions, 0 deletions
diff --git a/challenge-146/wambash/raku/ch-1.raku b/challenge-146/wambash/raku/ch-1.raku new file mode 100644 index 0000000000..aa8c9f75ba --- /dev/null +++ b/challenge-146/wambash/raku/ch-1.raku @@ -0,0 +1,22 @@ +#!/usr/bin/env raku + +constant @prime = ^Inf .grep: *.is-prime; + +sub n-prime-number ($n=10001) { + @prime + andthen .skip: $n-1 + andthen .head +} + +multi MAIN (Bool :test($)!) { + use Test; + is n-prime-number(1),2; + is n-prime-number(2),3; + is n-prime-number(6),13; + is n-prime-number(), 104_743; + done-testing; +} + +multi MAIN ($n=10001) { + say n-prime-number $n +} diff --git a/challenge-146/wambash/raku/ch-2.raku b/challenge-146/wambash/raku/ch-2.raku new file mode 100644 index 0000000000..167ec464d6 --- /dev/null +++ b/challenge-146/wambash/raku/ch-2.raku @@ -0,0 +1,27 @@ +#!/usr/bin/env raku + +multi sub parent (Rat $r where * > 1) { + $r - 1 +} + +multi sub parent (Rat $r) { + $r / (1-$r) +} + +sub curious-fraction-tree (Rat $member) { + $member, *.&parent ... 1 +} + +multi MAIN (Bool :test($)!) { + use Test; + is curious-fraction-tree(3/5), (3/5, 3/2, 1/2, 1); + is curious-fraction-tree(4/3), (4/3, 1/3, 1/2, 1); + is curious-fraction-tree(121/155), (121/155, 121/34, 87/34, 53/34, 19/34, 19/15, 4/15, 4/11, 4/7, 4/3, 1/3, 1/2, 1); + done-testing; +} + +multi MAIN ($member) { + curious-fraction-tree $member + andthen .map: *.nude.join: '/' + andthen .put +} |
