diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2025-07-18 22:30:49 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-18 22:30:49 +0100 |
| commit | cf4128f14b5604ed87175e09288164d9030309e8 (patch) | |
| tree | 827f98ebd9deb4123e83360b74b1bdc9e70e2cd0 | |
| parent | 60e5566c1a85b5eef9dac88637311bd0c01b85ae (diff) | |
| parent | 5db2af887d5c50bc400bab2e1d6d15d88ba6e0d7 (diff) | |
| download | perlweeklychallenge-club-cf4128f14b5604ed87175e09288164d9030309e8.tar.gz perlweeklychallenge-club-cf4128f14b5604ed87175e09288164d9030309e8.tar.bz2 perlweeklychallenge-club-cf4128f14b5604ed87175e09288164d9030309e8.zip | |
Merge pull request #12366 from arnesom/challenge-330-arne-sommer
week 330 Arne Sommer
| -rw-r--r-- | challenge-330/arne-sommer/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-330/arne-sommer/raku/ch-1.raku | 22 | ||||
| -rwxr-xr-x | challenge-330/arne-sommer/raku/ch-2.raku | 14 | ||||
| -rwxr-xr-x | challenge-330/arne-sommer/raku/clear-digits | 22 | ||||
| -rwxr-xr-x | challenge-330/arne-sommer/raku/title-capital | 14 |
5 files changed, 73 insertions, 0 deletions
diff --git a/challenge-330/arne-sommer/blog.txt b/challenge-330/arne-sommer/blog.txt new file mode 100644 index 0000000000..edc217b149 --- /dev/null +++ b/challenge-330/arne-sommer/blog.txt @@ -0,0 +1 @@ +https://raku-musings.com/clearly-capital.html
\ No newline at end of file diff --git a/challenge-330/arne-sommer/raku/ch-1.raku b/challenge-330/arne-sommer/raku/ch-1.raku new file mode 100755 index 0000000000..462f51d87a --- /dev/null +++ b/challenge-330/arne-sommer/raku/ch-1.raku @@ -0,0 +1,22 @@ +#! /usr/bin/env raku + +unit sub MAIN ($str where $str ~~ /^<[ a..z 0 .. 9 ]>+$/, + :v(:$verbose)); + +my @output; + +for $str.comb -> $current +{ + if $current eq any(0..9) + { + @output.pop; + say ": Digit $current; Remove letter -> { @output.join}" if $verbose; + } + else + { + @output.push: $current; + say ": Letter $current; Added -> { @output.join}" if $verbose; + } +} + +say @output.join;
\ No newline at end of file diff --git a/challenge-330/arne-sommer/raku/ch-2.raku b/challenge-330/arne-sommer/raku/ch-2.raku new file mode 100755 index 0000000000..358f7bc08c --- /dev/null +++ b/challenge-330/arne-sommer/raku/ch-2.raku @@ -0,0 +1,14 @@ +#! /usr/bin/env raku + +unit sub MAIN ($str where $str.chars > 0, + :v(:$verbose)); + +say $str.words.map( *.&tica ).join(" "); + +sub tica ($word) +{ + say ": Word: $word" if $verbose; + + return $word.lc if $word.chars <= 2; + return $word.lc.tc; +} diff --git a/challenge-330/arne-sommer/raku/clear-digits b/challenge-330/arne-sommer/raku/clear-digits new file mode 100755 index 0000000000..462f51d87a --- /dev/null +++ b/challenge-330/arne-sommer/raku/clear-digits @@ -0,0 +1,22 @@ +#! /usr/bin/env raku + +unit sub MAIN ($str where $str ~~ /^<[ a..z 0 .. 9 ]>+$/, + :v(:$verbose)); + +my @output; + +for $str.comb -> $current +{ + if $current eq any(0..9) + { + @output.pop; + say ": Digit $current; Remove letter -> { @output.join}" if $verbose; + } + else + { + @output.push: $current; + say ": Letter $current; Added -> { @output.join}" if $verbose; + } +} + +say @output.join;
\ No newline at end of file diff --git a/challenge-330/arne-sommer/raku/title-capital b/challenge-330/arne-sommer/raku/title-capital new file mode 100755 index 0000000000..358f7bc08c --- /dev/null +++ b/challenge-330/arne-sommer/raku/title-capital @@ -0,0 +1,14 @@ +#! /usr/bin/env raku + +unit sub MAIN ($str where $str.chars > 0, + :v(:$verbose)); + +say $str.words.map( *.&tica ).join(" "); + +sub tica ($word) +{ + say ": Word: $word" if $verbose; + + return $word.lc if $word.chars <= 2; + return $word.lc.tc; +} |
