aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaldhar H. Vyas <jaldhar@braincells.com>2021-12-12 21:34:20 -0500
committerJaldhar H. Vyas <jaldhar@braincells.com>2021-12-12 21:34:20 -0500
commitc98e21972703ffc64f4e338b2bd4454fcfe20dfe (patch)
tree286d4b1fea32fc66a5661308aaa02db0f90e53d6
parentfb9d7f996d663175ca83a5256401ba1a5152dd65 (diff)
downloadperlweeklychallenge-club-c98e21972703ffc64f4e338b2bd4454fcfe20dfe.tar.gz
perlweeklychallenge-club-c98e21972703ffc64f4e338b2bd4454fcfe20dfe.tar.bz2
perlweeklychallenge-club-c98e21972703ffc64f4e338b2bd4454fcfe20dfe.zip
Challenge 142 by Jaldhar H. Vyas.
-rw-r--r--challenge-142/jaldhar-h-vyas/blog.txt1
-rwxr-xr-xchallenge-142/jaldhar-h-vyas/perl/ch-1.sh3
-rwxr-xr-xchallenge-142/jaldhar-h-vyas/perl/ch-2.pl18
-rwxr-xr-xchallenge-142/jaldhar-h-vyas/raku/ch-1.sh3
-rwxr-xr-xchallenge-142/jaldhar-h-vyas/raku/ch-2.raku15
5 files changed, 40 insertions, 0 deletions
diff --git a/challenge-142/jaldhar-h-vyas/blog.txt b/challenge-142/jaldhar-h-vyas/blog.txt
new file mode 100644
index 0000000000..23b45f47b1
--- /dev/null
+++ b/challenge-142/jaldhar-h-vyas/blog.txt
@@ -0,0 +1 @@
+https://www.braincells.com/perl/2021/12/perl_weekly_challenge_week_142.html
diff --git a/challenge-142/jaldhar-h-vyas/perl/ch-1.sh b/challenge-142/jaldhar-h-vyas/perl/ch-1.sh
new file mode 100755
index 0000000000..740ed7bbc4
--- /dev/null
+++ b/challenge-142/jaldhar-h-vyas/perl/ch-1.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+perl -E 'say scalar grep { $ARGV[0] % $_ == 0 && $_ =~ /$ARGV[1]$/ } 1 .. $ARGV[0] - 1;' $@
diff --git a/challenge-142/jaldhar-h-vyas/perl/ch-2.pl b/challenge-142/jaldhar-h-vyas/perl/ch-2.pl
new file mode 100755
index 0000000000..2b5250a988
--- /dev/null
+++ b/challenge-142/jaldhar-h-vyas/perl/ch-2.pl
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+use 5.020;
+use warnings;
+use threads;
+use Time::HiRes qw / usleep /;
+
+sub work {
+ my ($arg) = @_;
+
+ usleep $arg * 10_000;
+ say $arg;
+}
+
+my @threads = map { threads->create(\&work, $_); } @ARGV;
+
+foreach (@threads) {
+ $_->join;
+}
diff --git a/challenge-142/jaldhar-h-vyas/raku/ch-1.sh b/challenge-142/jaldhar-h-vyas/raku/ch-1.sh
new file mode 100755
index 0000000000..9f52a0a3b4
--- /dev/null
+++ b/challenge-142/jaldhar-h-vyas/raku/ch-1.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+raku -e '(1 ..^ @*ARGS[0]).grep({ @*ARGS[0] %% $_; }).grep({ $_.match(/ "@*ARGS[1]" $ /)}).elems.say;' $@ \ No newline at end of file
diff --git a/challenge-142/jaldhar-h-vyas/raku/ch-2.raku b/challenge-142/jaldhar-h-vyas/raku/ch-2.raku
new file mode 100755
index 0000000000..965f68a2ce
--- /dev/null
+++ b/challenge-142/jaldhar-h-vyas/raku/ch-2.raku
@@ -0,0 +1,15 @@
+#!/usr/bin/raku
+
+sub work($arg) {
+ sleep $arg / 100;
+ say $arg;
+}
+
+sub MAIN(*@ARGS) {
+ my @threads;
+ for @*ARGS -> $arg {
+ @threads.push( Thread.start( &{work($arg)} ) );
+ }
+
+ .finish for @threads;
+}