aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-246/jaldhar-h-vyas/blog.txt1
-rwxr-xr-xchallenge-246/jaldhar-h-vyas/perl/ch-1.pl21
-rwxr-xr-xchallenge-246/jaldhar-h-vyas/perl/ch-2.pl20
-rwxr-xr-xchallenge-246/jaldhar-h-vyas/raku/ch-1.sh3
-rwxr-xr-xchallenge-246/jaldhar-h-vyas/raku/ch-2.raku17
5 files changed, 62 insertions, 0 deletions
diff --git a/challenge-246/jaldhar-h-vyas/blog.txt b/challenge-246/jaldhar-h-vyas/blog.txt
new file mode 100644
index 0000000000..67bd9b7d35
--- /dev/null
+++ b/challenge-246/jaldhar-h-vyas/blog.txt
@@ -0,0 +1 @@
+https://www.braincells.com/perl/2024/01/perl_weekly_challenge_week_246.html
diff --git a/challenge-246/jaldhar-h-vyas/perl/ch-1.pl b/challenge-246/jaldhar-h-vyas/perl/ch-1.pl
new file mode 100755
index 0000000000..e9698fef02
--- /dev/null
+++ b/challenge-246/jaldhar-h-vyas/perl/ch-1.pl
@@ -0,0 +1,21 @@
+#!/usr/bin/perl
+use 5.030;
+use warnings;
+
+sub pick {
+ my ($arr, $count) = @_;
+ my %results;
+ my $picked = 0;
+
+ while ($picked < $count) {
+ my $random = $arr->[int(rand(scalar @{$arr}))];
+ unless (exists $results{$random}) {
+ $results{$random} = 1;
+ $picked++;
+ }
+ }
+
+ return wantarray ? keys %results : [ keys %results];
+}
+
+say join "\n", pick([1 .. 49], 6); \ No newline at end of file
diff --git a/challenge-246/jaldhar-h-vyas/perl/ch-2.pl b/challenge-246/jaldhar-h-vyas/perl/ch-2.pl
new file mode 100755
index 0000000000..33615829d7
--- /dev/null
+++ b/challenge-246/jaldhar-h-vyas/perl/ch-2.pl
@@ -0,0 +1,20 @@
+#!/usr/bin/perl
+use 5.030;
+use warnings;
+
+my @a = @ARGV;
+
+if (scalar @a != 5) {
+ die "Need a sequence of five integers.\n";
+}
+
+for my $p (-10 .. 10) {
+ for my $q (-10 .. 10) {
+ if ($a[3] == $p * $a[1] + $q * $a[2] && $a[4] == $p * $a[2] + $q * $a[3]) {
+ say 'true';
+ exit;
+ }
+ }
+}
+
+say 'false';
diff --git a/challenge-246/jaldhar-h-vyas/raku/ch-1.sh b/challenge-246/jaldhar-h-vyas/raku/ch-1.sh
new file mode 100755
index 0000000000..d7ae2d2364
--- /dev/null
+++ b/challenge-246/jaldhar-h-vyas/raku/ch-1.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+raku -e '(1 .. 49).pick(6).join("\n").say' "$@"
diff --git a/challenge-246/jaldhar-h-vyas/raku/ch-2.raku b/challenge-246/jaldhar-h-vyas/raku/ch-2.raku
new file mode 100755
index 0000000000..414d03a2f5
--- /dev/null
+++ b/challenge-246/jaldhar-h-vyas/raku/ch-2.raku
@@ -0,0 +1,17 @@
+#!/usr/bin/raku
+
+sub MAIN(
+ *@a where { @a.elems == 5; } #= a sequence of five integers
+) {
+
+ for -10 .. 10 -> $p {
+ for -10 .. 10 -> $q {
+ if @a[3] == $p * @a[1] + $q * @a[2] && @a[4] == $p * @a[2] + $q * @a[3] {
+ say 'true';
+ exit;
+ }
+ }
+ }
+
+ say 'false';
+} \ No newline at end of file