diff options
| author | chirvasitua <stuart-little@users.noreply.github.com> | 2020-11-08 14:42:45 -0500 |
|---|---|---|
| committer | chirvasitua <stuart-little@users.noreply.github.com> | 2020-11-08 14:42:45 -0500 |
| commit | 313334f8cfb42059e61aeb74b2fc05db43ab1653 (patch) | |
| tree | 3aedb58c66e2c89685504bf8c112e7a6fdf9ded4 /challenge-042 | |
| parent | 5b90afe957e0cff83a1d1cf7381a195a98b1f1ca (diff) | |
| download | perlweeklychallenge-club-313334f8cfb42059e61aeb74b2fc05db43ab1653.tar.gz perlweeklychallenge-club-313334f8cfb42059e61aeb74b2fc05db43ab1653.tar.bz2 perlweeklychallenge-club-313334f8cfb42059e61aeb74b2fc05db43ab1653.zip | |
initial commit on 040-042, 060-061, 063
Diffstat (limited to 'challenge-042')
| -rw-r--r-- | challenge-042/stuart-little/README | 1 | ||||
| -rwxr-xr-x | challenge-042/stuart-little/raku/ch-1.p6 | 6 | ||||
| -rwxr-xr-x | challenge-042/stuart-little/raku/ch-2.p6 | 20 |
3 files changed, 27 insertions, 0 deletions
diff --git a/challenge-042/stuart-little/README b/challenge-042/stuart-little/README new file mode 100644 index 0000000000..78439907de --- /dev/null +++ b/challenge-042/stuart-little/README @@ -0,0 +1 @@ +Solutions by Stuart Little diff --git a/challenge-042/stuart-little/raku/ch-1.p6 b/challenge-042/stuart-little/raku/ch-1.p6 new file mode 100755 index 0000000000..d65fc51cdc --- /dev/null +++ b/challenge-042/stuart-little/raku/ch-1.p6 @@ -0,0 +1,6 @@ +#!/usr/bin/env perl6 +use v6; + +for (0..((@*ARGS) ?? (@*ARGS[0].Int) !! (50))).map({ "Decimal: $_ -- Octal: $_.base(8)" }) {.say} + +# run as <script> <decimal number to go up to> or just <script> to default to the range 0..50 diff --git a/challenge-042/stuart-little/raku/ch-2.p6 b/challenge-042/stuart-little/raku/ch-2.p6 new file mode 100755 index 0000000000..18e0b20559 --- /dev/null +++ b/challenge-042/stuart-little/raku/ch-2.p6 @@ -0,0 +1,20 @@ +#!/usr/bin/env perl6 +use v6; + +grammar BAL { + regex TOP { <expr>* } + regex expr { '(' <expr>* ')' } +} + +given @*ARGS[0] { + when /^\d+$/ { + say "Random string of parens: ", my $s=<( )>.roll(@*ARGS[0].Int).join; + say "Balanced: ", BAL.parse($s).Bool + } + when /^<[()]>*$/ { + say "Balanced: ", BAL.parse(@*ARGS[0]).Bool + } +} + +# run as <script> <number of parentheses> or +# <script> <single-quoted string of parens> |
