From bcc880330eb7fd7877eb6cd2f5d3dbb825809ec2 Mon Sep 17 00:00:00 2001 From: 冯昶 Date: Mon, 3 Jan 2022 23:20:45 +0800 Subject: Challenge 146, raku solutions --- challenge-146/feng-chang/raku/ch-1.raku | 3 +++ challenge-146/feng-chang/raku/ch-2.raku | 16 ++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100755 challenge-146/feng-chang/raku/ch-1.raku create mode 100755 challenge-146/feng-chang/raku/ch-2.raku diff --git a/challenge-146/feng-chang/raku/ch-1.raku b/challenge-146/feng-chang/raku/ch-1.raku new file mode 100755 index 0000000000..acba62e935 --- /dev/null +++ b/challenge-146/feng-chang/raku/ch-1.raku @@ -0,0 +1,3 @@ +#!/bin/env raku + +put (2..∞).grep(*.is-prime)[100_00]; diff --git a/challenge-146/feng-chang/raku/ch-2.raku b/challenge-146/feng-chang/raku/ch-2.raku new file mode 100755 index 0000000000..86f1c53b16 --- /dev/null +++ b/challenge-146/feng-chang/raku/ch-2.raku @@ -0,0 +1,16 @@ +#!/bin/env raku + +unit sub MAIN(Rat:D \r); + +put "parent: {r.&parent.&toStr} " ~ + "grandparent: {r.&parent.&parent.&toStr}"; + +my method parent(Rat:D \r : --> Rat:D) { + r < 1 ?? + r.numerator/(r.denominator - r.numerator) !! + (r.numerator - r.denominator)/r.denominator +} + +my method toStr(Rat:D \r : --> Str:D) { + "{r.numerator}/{r.denominator}" +} -- cgit