diff options
| author | Arne Sommer <arne@bbop.org> | 2025-05-11 19:49:13 +0200 |
|---|---|---|
| committer | Arne Sommer <arne@bbop.org> | 2025-05-11 19:49:13 +0200 |
| commit | 41d9d7a4cbfbfa06e0868344cb026b9e1ba274a9 (patch) | |
| tree | 9032500584799ce8c73e782050d6dd1c838647b6 | |
| parent | 96ffdd8c13c12259b278e66fb1e2572a9688b69b (diff) | |
| download | perlweeklychallenge-club-41d9d7a4cbfbfa06e0868344cb026b9e1ba274a9.tar.gz perlweeklychallenge-club-41d9d7a4cbfbfa06e0868344cb026b9e1ba274a9.tar.bz2 perlweeklychallenge-club-41d9d7a4cbfbfa06e0868344cb026b9e1ba274a9.zip | |
Arne Sommer
| -rw-r--r-- | challenge-320/arne-sommer/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-320/arne-sommer/raku/ch-1.raku | 11 | ||||
| -rwxr-xr-x | challenge-320/arne-sommer/raku/ch-2.raku | 15 | ||||
| -rwxr-xr-x | challenge-320/arne-sommer/raku/maximum-count | 11 | ||||
| -rwxr-xr-x | challenge-320/arne-sommer/raku/sum-difference | 15 |
5 files changed, 53 insertions, 0 deletions
diff --git a/challenge-320/arne-sommer/blog.txt b/challenge-320/arne-sommer/blog.txt new file mode 100644 index 0000000000..2126ca62de --- /dev/null +++ b/challenge-320/arne-sommer/blog.txt @@ -0,0 +1 @@ +https://raku-musings.com/count-difference.html diff --git a/challenge-320/arne-sommer/raku/ch-1.raku b/challenge-320/arne-sommer/raku/ch-1.raku new file mode 100755 index 0000000000..c681b0be63 --- /dev/null +++ b/challenge-320/arne-sommer/raku/ch-1.raku @@ -0,0 +1,11 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@ints where @ints.elems > 1 && all(@ints) ~~ Int, + :v(:$verbose)); + +my $pos = @ints.grep( * > 0 ).elems; +my $neg = @ints.grep( * < 0 ).elems; + +say ": There are $pos positive integers\n: There are $neg negative integers" if $verbose; + +say ($pos, $neg).max; diff --git a/challenge-320/arne-sommer/raku/ch-2.raku b/challenge-320/arne-sommer/raku/ch-2.raku new file mode 100755 index 0000000000..09a472106b --- /dev/null +++ b/challenge-320/arne-sommer/raku/ch-2.raku @@ -0,0 +1,15 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@ints where @ints.elems > 0 && all(@ints) ~~ Int && all(@ints) > 0, + :v(:$verbose)); + +my $elem-sum = @ints.sum; +my $digit-sum = @ints>>.comb>>.sum.sum; + +if $verbose +{ + say ": Element sum: $elem-sum"; + say ": Digit sum: $digit-sum"; +} + +say abs($elem-sum - $digit-sum); diff --git a/challenge-320/arne-sommer/raku/maximum-count b/challenge-320/arne-sommer/raku/maximum-count new file mode 100755 index 0000000000..c681b0be63 --- /dev/null +++ b/challenge-320/arne-sommer/raku/maximum-count @@ -0,0 +1,11 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@ints where @ints.elems > 1 && all(@ints) ~~ Int, + :v(:$verbose)); + +my $pos = @ints.grep( * > 0 ).elems; +my $neg = @ints.grep( * < 0 ).elems; + +say ": There are $pos positive integers\n: There are $neg negative integers" if $verbose; + +say ($pos, $neg).max; diff --git a/challenge-320/arne-sommer/raku/sum-difference b/challenge-320/arne-sommer/raku/sum-difference new file mode 100755 index 0000000000..09a472106b --- /dev/null +++ b/challenge-320/arne-sommer/raku/sum-difference @@ -0,0 +1,15 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@ints where @ints.elems > 0 && all(@ints) ~~ Int && all(@ints) > 0, + :v(:$verbose)); + +my $elem-sum = @ints.sum; +my $digit-sum = @ints>>.comb>>.sum.sum; + +if $verbose +{ + say ": Element sum: $elem-sum"; + say ": Digit sum: $digit-sum"; +} + +say abs($elem-sum - $digit-sum); |
