aboutsummaryrefslogtreecommitdiff
path: root/challenge-114
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2021-05-31 05:17:26 +0100
committerGitHub <noreply@github.com>2021-05-31 05:17:26 +0100
commit675473ee450622c849d3f3fee5b1ecbc2d109d8e (patch)
treec4881a433a186bfd8540cce7a0e402956d6cfbc4 /challenge-114
parentd43ccd69ba0bc8d5c9891e2e8aeef03a44861395 (diff)
parent4db0d027abbe8b84f1497dcb6fc25dc26f04f4c9 (diff)
downloadperlweeklychallenge-club-675473ee450622c849d3f3fee5b1ecbc2d109d8e.tar.gz
perlweeklychallenge-club-675473ee450622c849d3f3fee5b1ecbc2d109d8e.tar.bz2
perlweeklychallenge-club-675473ee450622c849d3f3fee5b1ecbc2d109d8e.zip
Merge pull request #4171 from jaldhar/challenge-114
Challenge 114 by Jaldhar H. Vyas
Diffstat (limited to 'challenge-114')
-rw-r--r--challenge-114/jaldhar-h-vyas/blog.txt1
-rwxr-xr-xchallenge-114/jaldhar-h-vyas/perl/ch-1.pl9
-rwxr-xr-xchallenge-114/jaldhar-h-vyas/perl/ch-2.pl13
-rwxr-xr-xchallenge-114/jaldhar-h-vyas/raku/ch-1.raku7
-rwxr-xr-xchallenge-114/jaldhar-h-vyas/raku/ch-2.raku12
5 files changed, 42 insertions, 0 deletions
diff --git a/challenge-114/jaldhar-h-vyas/blog.txt b/challenge-114/jaldhar-h-vyas/blog.txt
new file mode 100644
index 0000000000..53b70c07a8
--- /dev/null
+++ b/challenge-114/jaldhar-h-vyas/blog.txt
@@ -0,0 +1 @@
+https://www.braincells.com/perl/2021/05/perl_weekly_challenge_week_114.html
diff --git a/challenge-114/jaldhar-h-vyas/perl/ch-1.pl b/challenge-114/jaldhar-h-vyas/perl/ch-1.pl
new file mode 100755
index 0000000000..15be5e1127
--- /dev/null
+++ b/challenge-114/jaldhar-h-vyas/perl/ch-1.pl
@@ -0,0 +1,9 @@
+#!/usr/bin/perl
+use 5.020;
+use warnings;
+
+my $N = shift // die "Need integer argument\n";
+
+my $next = $N + 1;
+do $next++ until $next == reverse $next;
+say $next;
diff --git a/challenge-114/jaldhar-h-vyas/perl/ch-2.pl b/challenge-114/jaldhar-h-vyas/perl/ch-2.pl
new file mode 100755
index 0000000000..123cb1cef6
--- /dev/null
+++ b/challenge-114/jaldhar-h-vyas/perl/ch-2.pl
@@ -0,0 +1,13 @@
+#!/usr/bin/perl
+use 5.020;
+use warnings;
+
+my $N = shift // die "Need integer argument\n";
+my $rightmostOneBit = $N & -$N;
+my $nextHigherOneBit = $N + $rightmostOneBit;
+my $rightOnesSequence = $N ^ $nextHigherOneBit;
+
+$rightOnesSequence /= $rightmostOneBit;
+$rightOnesSequence >>= 2;
+
+say $nextHigherOneBit | $rightOnesSequence;
diff --git a/challenge-114/jaldhar-h-vyas/raku/ch-1.raku b/challenge-114/jaldhar-h-vyas/raku/ch-1.raku
new file mode 100755
index 0000000000..1c5c541ecc
--- /dev/null
+++ b/challenge-114/jaldhar-h-vyas/raku/ch-1.raku
@@ -0,0 +1,7 @@
+#!/usr/bin/raku
+
+sub MAIN(Int $N) {
+ my $next = $N + 1;
+ do $next++ until $next == $next.flip;
+ say $next;
+} \ No newline at end of file
diff --git a/challenge-114/jaldhar-h-vyas/raku/ch-2.raku b/challenge-114/jaldhar-h-vyas/raku/ch-2.raku
new file mode 100755
index 0000000000..59bea95143
--- /dev/null
+++ b/challenge-114/jaldhar-h-vyas/raku/ch-2.raku
@@ -0,0 +1,12 @@
+#!/usr/bin/raku
+
+sub MAIN(Int $N) {
+ my $rightmostOneBit = $N +& -$N;
+ my $nextHigherOneBit = $N + $rightmostOneBit;
+ my $rightOnesSequence = $N +^ $nextHigherOneBit;
+
+ $rightOnesSequence /= $rightmostOneBit;
+ $rightOnesSequence +>= 2;
+
+ say $nextHigherOneBit +| $rightOnesSequence;
+} \ No newline at end of file