diff options
| author | Adam Russell <ac.russell@live.com> | 2019-09-01 02:14:49 -0400 |
|---|---|---|
| committer | Adam Russell <ac.russell@live.com> | 2019-09-01 02:14:49 -0400 |
| commit | 5a0df47ac7abb69a2612891332c9b1594b308428 (patch) | |
| tree | d787639603edec660353bc210fc51b8da95fb282 | |
| parent | f43c00344cd7481b2361900f0e70ad54da69539c (diff) | |
| download | perlweeklychallenge-club-5a0df47ac7abb69a2612891332c9b1594b308428.tar.gz perlweeklychallenge-club-5a0df47ac7abb69a2612891332c9b1594b308428.tar.bz2 perlweeklychallenge-club-5a0df47ac7abb69a2612891332c9b1594b308428.zip | |
initial commit
| -rw-r--r-- | challenge-023/adam-russell/blog.txt | 1 | ||||
| -rw-r--r-- | challenge-023/adam-russell/perl5/ch-1.pl | 31 | ||||
| -rw-r--r-- | challenge-023/adam-russell/perl5/ch-2.pl | 18 | ||||
| -rw-r--r-- | challenge-023/adam-russell/perl5/ch-3.pl | 0 |
4 files changed, 50 insertions, 0 deletions
diff --git a/challenge-023/adam-russell/blog.txt b/challenge-023/adam-russell/blog.txt new file mode 100644 index 0000000000..be945e653a --- /dev/null +++ b/challenge-023/adam-russell/blog.txt @@ -0,0 +1 @@ +https://adamcrussell.livejournal.com/7762.html diff --git a/challenge-023/adam-russell/perl5/ch-1.pl b/challenge-023/adam-russell/perl5/ch-1.pl new file mode 100644 index 0000000000..8823af7154 --- /dev/null +++ b/challenge-023/adam-russell/perl5/ch-1.pl @@ -0,0 +1,31 @@ +use strict; +use warnings; +## +# Create a script that prints nth order forward difference series. +## +use Data::Dump q/pp/; + +sub forward_difference{ + my($order, $numbers) = @_; + if(!$order || @{$numbers} == 1){ + return $numbers; + } + else{ + my $reduced = []; + my $previous = $numbers->[0]; + for(my $i = 1; $i < @{$numbers}; $i++){ + push @{$reduced}, $numbers->[$i] - $previous; + $previous = $numbers->[$i]; + } + forward_difference($order - 1, $reduced); + } + +} + + +MAIN:{ + my $order = $ARGV[0]; + my @numbers = @ARGV[1 .. (@ARGV - 1)]; + my $reduced = forward_difference($order, \@numbers); + print pp $reduced; +} diff --git a/challenge-023/adam-russell/perl5/ch-2.pl b/challenge-023/adam-russell/perl5/ch-2.pl new file mode 100644 index 0000000000..e384e411e3 --- /dev/null +++ b/challenge-023/adam-russell/perl5/ch-2.pl @@ -0,0 +1,18 @@ +use Data::Dump q/pp/; + +sub prime_factor{ + my $x = shift(@_); + my @factors; + for (my $y = 2; $y <= $x; $y++){ + next if $x % $y; + $x /= $y; + push @factors, $y; + redo; + } + return @factors; +} + +print pp prime_factor(228); +print pp prime_factor(100); +print pp prime_factor(110); + diff --git a/challenge-023/adam-russell/perl5/ch-3.pl b/challenge-023/adam-russell/perl5/ch-3.pl new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/challenge-023/adam-russell/perl5/ch-3.pl |
