aboutsummaryrefslogtreecommitdiff
path: root/challenge-163
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2022-05-09 02:04:30 +0100
committerGitHub <noreply@github.com>2022-05-09 02:04:30 +0100
commit70a27a14ec8f38019d5df0ccae53e8d5873d3e6f (patch)
treeb6e00e5f54e2d2cb1448185390126873d4a1f731 /challenge-163
parent5fd4bad0df6f1b517ec6e5ccbf1c26fa7147f03a (diff)
parent9c1b7b609b0c4cca0367a9b0026e2f099c413951 (diff)
downloadperlweeklychallenge-club-70a27a14ec8f38019d5df0ccae53e8d5873d3e6f.tar.gz
perlweeklychallenge-club-70a27a14ec8f38019d5df0ccae53e8d5873d3e6f.tar.bz2
perlweeklychallenge-club-70a27a14ec8f38019d5df0ccae53e8d5873d3e6f.zip
Merge pull request #6076 from Hiranyaloka/ch-163
ch-163 Raku
Diffstat (limited to 'challenge-163')
-rwxr-xr-xchallenge-163/rick-bychowski/raku/ch-1.raku12
-rwxr-xr-xchallenge-163/rick-bychowski/raku/ch-2.raku23
2 files changed, 35 insertions, 0 deletions
diff --git a/challenge-163/rick-bychowski/raku/ch-1.raku b/challenge-163/rick-bychowski/raku/ch-1.raku
new file mode 100755
index 0000000000..1038498389
--- /dev/null
+++ b/challenge-163/rick-bychowski/raku/ch-1.raku
@@ -0,0 +1,12 @@
+#!/usr/bin/env raku
+# https://theweeklychallenge.org/blog/perl-weekly-challenge-163/
+
+sub MAIN( $a, $b, *@c ) {
+ my $bitsum = 0;
+ my @a = ( $a, $b, @c).flat;
+ loop (my $i = 0; $i < @a.elems; $i++) {
+ $bitsum += sum( @a.shift X+& @a );
+ }
+ say $bitsum;
+}
+
diff --git a/challenge-163/rick-bychowski/raku/ch-2.raku b/challenge-163/rick-bychowski/raku/ch-2.raku
new file mode 100755
index 0000000000..2323b2d84d
--- /dev/null
+++ b/challenge-163/rick-bychowski/raku/ch-2.raku
@@ -0,0 +1,23 @@
+#!/usr/bin/env raku
+# https://theweeklychallenge.org/blog/perl-weekly-challenge-163/
+
+sub MAIN( $a, $b, *@c ) {
+ my @a = ( $a, $b, @c).flat;
+ summation( @a );
+
+ sub summation( @x ){
+ say @x;
+ my @y = @x;
+ my @z = [];
+ @z[0] = @y[1];
+ loop (my $i = 0; $i < @y.elems; $i++) {
+ @z[$i + 1] = @z[$i] + @y[$i + 2] if defined @y[$i + 2];
+ }
+ if @z.elems < 2 {
+ say "Summation is '@z[* - 1]'";
+ } else {
+ summation(@z);
+ }
+ }
+}
+