aboutsummaryrefslogtreecommitdiff
path: root/challenge-171
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2022-06-29 13:40:47 +0100
committerGitHub <noreply@github.com>2022-06-29 13:40:47 +0100
commit0c6792736f40aebd4d56398f474ff42a0ec9994f (patch)
tree128d174227a9e7aaa187f1a5bcc60c6cfaddf5d0 /challenge-171
parenta017695a68aded5aa445515a47c1bfc1ebb467de (diff)
parentde1f27c7b8b5646a8530299bb42a9568e26adc36 (diff)
downloadperlweeklychallenge-club-0c6792736f40aebd4d56398f474ff42a0ec9994f.tar.gz
perlweeklychallenge-club-0c6792736f40aebd4d56398f474ff42a0ec9994f.tar.bz2
perlweeklychallenge-club-0c6792736f40aebd4d56398f474ff42a0ec9994f.zip
Merge pull request #6362 from kjetillll/challenge-171-kjetillll
https://theweeklychallenge.org/blog/perl-weekly-challenge-171/
Diffstat (limited to 'challenge-171')
-rw-r--r--challenge-171/kjetillll/perl/ch-1.pl11
-rw-r--r--challenge-171/kjetillll/perl/ch-2.pl9
2 files changed, 20 insertions, 0 deletions
diff --git a/challenge-171/kjetillll/perl/ch-1.pl b/challenge-171/kjetillll/perl/ch-1.pl
new file mode 100644
index 0000000000..b790d01819
--- /dev/null
+++ b/challenge-171/kjetillll/perl/ch-1.pl
@@ -0,0 +1,11 @@
+#!/usr/bin/perl
+use List::Util 'sum';
+my $want = shift // 20;
+my($have,$n)=(0,1);
+sum( grep $n % $_ == 0, 1..$n-1) > $n
+ and print "$n\n"
+ and $have++
+ while $have < $want
+ and $n+=2;
+
+#945 1575 2205 2835 3465 4095 4725 5355 5775 5985 6435 6615 6825 7245 7425 7875 8085 8415 8505 8925
diff --git a/challenge-171/kjetillll/perl/ch-2.pl b/challenge-171/kjetillll/perl/ch-2.pl
new file mode 100644
index 0000000000..00f0e30f70
--- /dev/null
+++ b/challenge-171/kjetillll/perl/ch-2.pl
@@ -0,0 +1,9 @@
+#!/usr/bin/perl
+sub compose {
+ my($f,$g)=@_;
+ sub { $f->($g->(@_)) }
+}
+my $f = sub{ shift() =~ s/.//r }; #remove first char
+my $g = sub{ shift() x 2 }; #same string twice
+my $h = compose($f,$g);
+print $h->('gold'), "\n"; #oldgold