aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-023/mark-anderson/ch-1.pl24
-rw-r--r--challenge-023/mark-anderson/ch-2.pl7
-rw-r--r--challenge-023/mark-anderson/ch-3.pl16
3 files changed, 47 insertions, 0 deletions
diff --git a/challenge-023/mark-anderson/ch-1.pl b/challenge-023/mark-anderson/ch-1.pl
new file mode 100644
index 0000000000..c225e84204
--- /dev/null
+++ b/challenge-023/mark-anderson/ch-1.pl
@@ -0,0 +1,24 @@
+#!/usr/bin/env perl
+
+use Modern::Perl '2018';
+use Getopt::Long;
+
+#usage: perl ch-1.pl -n=2 -- -11 13 -13 12;
+
+my $n = 1;
+GetOptions('n=i' => \$n) ;
+
+my @X = (5, 9, 2, 8, 1, 6);
+@X = @ARGV if @ARGV;
+
+while($n and @X > 1) {
+ my @Y;
+ foreach my $i (0 .. ($#X - 1)) {
+ push @Y, $X[$i+1] - $X[$i];
+ }
+ $n--;
+ @X = @Y;
+}
+
+$" = ", ";
+say "@X";
diff --git a/challenge-023/mark-anderson/ch-2.pl b/challenge-023/mark-anderson/ch-2.pl
new file mode 100644
index 0000000000..050d75104a
--- /dev/null
+++ b/challenge-023/mark-anderson/ch-2.pl
@@ -0,0 +1,7 @@
+#!/usr/bin/env perl
+
+use Modern::Perl '2018';
+use Math::Prime::Util 'factor';
+
+my $num = shift || 228;
+say join ", ", factor($num);
diff --git a/challenge-023/mark-anderson/ch-3.pl b/challenge-023/mark-anderson/ch-3.pl
new file mode 100644
index 0000000000..53603f7ab7
--- /dev/null
+++ b/challenge-023/mark-anderson/ch-3.pl
@@ -0,0 +1,16 @@
+#!/usr/bin/env perl
+
+use Modern::Perl '2018';
+use Mojo::UserAgent;
+
+my $ua = Mojo::UserAgent->new;
+
+my $array = $ua->get("https://www.poemist.com/api/v1/randompoems")
+ ->result->json;
+
+foreach my $i (keys $array->@*) {
+ printf "%-7s%s\n", "URL:", $array->[$i]->{url};
+ printf "%-7s%s\n", "Poet:", $array->[$i]->{poet}->{name};
+ printf "%-7s%s\n\n", "Title:", $array->[$i]->{title};
+ say $array->[$i]->{content}, "\n";
+}