From 858aa4643f1838b41baeb196e70a37e4294a58a3 Mon Sep 17 00:00:00 2001 From: Mark Anderson Date: Wed, 28 Aug 2019 18:04:22 -0600 Subject: Challenge 23 solutions. --- challenge-023/mark-anderson/ch-1.pl | 24 ++++++++++++++++++++++++ challenge-023/mark-anderson/ch-2.pl | 7 +++++++ challenge-023/mark-anderson/ch-3.pl | 16 ++++++++++++++++ 3 files changed, 47 insertions(+) create mode 100644 challenge-023/mark-anderson/ch-1.pl create mode 100644 challenge-023/mark-anderson/ch-2.pl create mode 100644 challenge-023/mark-anderson/ch-3.pl 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"; +} -- cgit