diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2020-12-01 06:06:47 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-12-01 06:06:47 +0000 |
| commit | 25648e5e844695011844cfd0a59844dc67686bb6 (patch) | |
| tree | 5176ed3f1377c471ff9536d8daee763045f7bda0 | |
| parent | 9876b1add9717934552b898c5ca1aa5ac733ea30 (diff) | |
| parent | dfa8b9464c40b315e55baac25479954b1ad571a4 (diff) | |
| download | perlweeklychallenge-club-25648e5e844695011844cfd0a59844dc67686bb6.tar.gz perlweeklychallenge-club-25648e5e844695011844cfd0a59844dc67686bb6.tar.bz2 perlweeklychallenge-club-25648e5e844695011844cfd0a59844dc67686bb6.zip | |
Merge pull request #2896 from stuart-little/stuart-little_023
1st commit on 023
| -rw-r--r-- | challenge-023/stuart-little/README | 1 | ||||
| -rwxr-xr-x | challenge-023/stuart-little/raku/ch-1.p6 | 10 | ||||
| -rwxr-xr-x | challenge-023/stuart-little/raku/ch-2.p6 | 14 |
3 files changed, 25 insertions, 0 deletions
diff --git a/challenge-023/stuart-little/README b/challenge-023/stuart-little/README new file mode 100644 index 0000000000..78439907de --- /dev/null +++ b/challenge-023/stuart-little/README @@ -0,0 +1 @@ +Solutions by Stuart Little diff --git a/challenge-023/stuart-little/raku/ch-1.p6 b/challenge-023/stuart-little/raku/ch-1.p6 new file mode 100755 index 0000000000..d8deac2344 --- /dev/null +++ b/challenge-023/stuart-little/raku/ch-1.p6 @@ -0,0 +1,10 @@ +#!/usr/bin/env perl6 +use v6; + +sub dff(@a where {$_.all ~~ Int}) { + @a.rotor(2 => -1).map({ $_[1] - $_[0] }) +} + +for (1..@*ARGS[0].Int).map({ reduce { $^b.($^a) }, @*ARGS[1..*].map(*.Int), |(&dff xx $_) }) {.say} + +# run as <script> <number of difference iterations> <space-separated integer array entries> diff --git a/challenge-023/stuart-little/raku/ch-2.p6 b/challenge-023/stuart-little/raku/ch-2.p6 new file mode 100755 index 0000000000..2209962027 --- /dev/null +++ b/challenge-023/stuart-little/raku/ch-2.p6 @@ -0,0 +1,14 @@ +#!/usr/bin/env perl6 +use v6; + +my @PRIMES=(2..*).grep(*.is-prime); + +sub fct($n,@a) { + $n.abs == 1 && return @a; + my $fact=@PRIMES.first($n %% *); + return fct(($n div $fact), (|@a,$fact)); +} + +say @*ARGS[0].Int.&fct(()) + +# run as <script> <integer> |
