aboutsummaryrefslogtreecommitdiff
path: root/challenge-119
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2021-07-04 21:53:13 +0100
committerGitHub <noreply@github.com>2021-07-04 21:53:13 +0100
commitab742c8ed7d71c66132d46d91130eb7379b0a8ff (patch)
tree5aff9be12329d8d103bfca11c673d5a081ee9860 /challenge-119
parent66aec5febcbf5210d80ee08b15ea4f7754c38816 (diff)
parentbbf90db88eacfac6840509f26ef358b73e5bdeeb (diff)
downloadperlweeklychallenge-club-ab742c8ed7d71c66132d46d91130eb7379b0a8ff.tar.gz
perlweeklychallenge-club-ab742c8ed7d71c66132d46d91130eb7379b0a8ff.tar.bz2
perlweeklychallenge-club-ab742c8ed7d71c66132d46d91130eb7379b0a8ff.zip
Merge pull request #4417 from jaldhar/challenge-119
Challenge 119 by Jaldhar H. Vyas.
Diffstat (limited to 'challenge-119')
-rw-r--r--challenge-119/jaldhar-h-vyas/blog.txt1
-rwxr-xr-xchallenge-119/jaldhar-h-vyas/perl/ch-1.pl13
-rwxr-xr-xchallenge-119/jaldhar-h-vyas/perl/ch-2.pl16
-rwxr-xr-xchallenge-119/jaldhar-h-vyas/raku/ch-1.raku12
-rwxr-xr-xchallenge-119/jaldhar-h-vyas/raku/ch-2.sh1
5 files changed, 43 insertions, 0 deletions
diff --git a/challenge-119/jaldhar-h-vyas/blog.txt b/challenge-119/jaldhar-h-vyas/blog.txt
new file mode 100644
index 0000000000..9b34185ba3
--- /dev/null
+++ b/challenge-119/jaldhar-h-vyas/blog.txt
@@ -0,0 +1 @@
+https://www.braincells.com/perl/2021/07/perl_weekly_challenge_week_119.html
diff --git a/challenge-119/jaldhar-h-vyas/perl/ch-1.pl b/challenge-119/jaldhar-h-vyas/perl/ch-1.pl
new file mode 100755
index 0000000000..e8c03576bd
--- /dev/null
+++ b/challenge-119/jaldhar-h-vyas/perl/ch-1.pl
@@ -0,0 +1,13 @@
+#!/usr/bin/perl
+use 5.020;
+use warnings;
+
+my $N = shift // die "Must specify an integer.\n";
+
+my $n = sprintf "%b", $N;
+if ((length $n) % 8 != 0) {
+ $n = 0 x (8 - (length $n) % 8) . $n;
+}
+
+say oct '0b' . join q{}, reverse (unpack '(A4)*', $n);
+
diff --git a/challenge-119/jaldhar-h-vyas/perl/ch-2.pl b/challenge-119/jaldhar-h-vyas/perl/ch-2.pl
new file mode 100755
index 0000000000..e594aee380
--- /dev/null
+++ b/challenge-119/jaldhar-h-vyas/perl/ch-2.pl
@@ -0,0 +1,16 @@
+#!/usr/bin/perl
+use 5.020;
+use warnings;
+
+my $N = shift // die "Must specify an integer.\n";
+my $n = 0;
+my $nth = 0;
+
+while (++$n) {
+ if ( $n =~ /^ [1-3]+ $/x && $n !~ /^ 11/x ) {
+ if (++$nth == $N) {
+ say $n;
+ last;
+ }
+ }
+} \ No newline at end of file
diff --git a/challenge-119/jaldhar-h-vyas/raku/ch-1.raku b/challenge-119/jaldhar-h-vyas/raku/ch-1.raku
new file mode 100755
index 0000000000..9e05b654fa
--- /dev/null
+++ b/challenge-119/jaldhar-h-vyas/raku/ch-1.raku
@@ -0,0 +1,12 @@
+#!/usr/bin/raku
+
+sub MAIN(
+ Int $N #= an integer
+) {
+ my $n = $N.base(2);
+ if $n.chars !%% 8 {
+ $n = 0 x (8 - $n.chars % 8) ~ $n;
+ }
+
+ $n.comb(4).reverse.join.parse-base(2).say;
+} \ No newline at end of file
diff --git a/challenge-119/jaldhar-h-vyas/raku/ch-2.sh b/challenge-119/jaldhar-h-vyas/raku/ch-2.sh
new file mode 100755
index 0000000000..5cfdfb39b8
--- /dev/null
+++ b/challenge-119/jaldhar-h-vyas/raku/ch-2.sh
@@ -0,0 +1 @@
+raku -e '(1 .. *).grep({ /^ <[1 .. 3]>+ $/ && !/^ 11/ })[@*ARGS[0] - 1].say' $@ \ No newline at end of file