aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Russell <ac.russell@live.com>2019-09-01 02:14:49 -0400
committerAdam Russell <ac.russell@live.com>2019-09-01 02:14:49 -0400
commit5a0df47ac7abb69a2612891332c9b1594b308428 (patch)
treed787639603edec660353bc210fc51b8da95fb282
parentf43c00344cd7481b2361900f0e70ad54da69539c (diff)
downloadperlweeklychallenge-club-5a0df47ac7abb69a2612891332c9b1594b308428.tar.gz
perlweeklychallenge-club-5a0df47ac7abb69a2612891332c9b1594b308428.tar.bz2
perlweeklychallenge-club-5a0df47ac7abb69a2612891332c9b1594b308428.zip
initial commit
-rw-r--r--challenge-023/adam-russell/blog.txt1
-rw-r--r--challenge-023/adam-russell/perl5/ch-1.pl31
-rw-r--r--challenge-023/adam-russell/perl5/ch-2.pl18
-rw-r--r--challenge-023/adam-russell/perl5/ch-3.pl0
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