aboutsummaryrefslogtreecommitdiff
path: root/challenge-026
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2019-09-22 23:53:05 +0100
committerGitHub <noreply@github.com>2019-09-22 23:53:05 +0100
commit4ba7aef401725fc2c0c95434e91a412754aeeb73 (patch)
treef25ba9651649ba778190fc4e900e61f34f7b57f8 /challenge-026
parent0417659900900df7ab5d9b2b360922d4ba42d528 (diff)
parent5b9e3352cd1ac6e6b21d449b5b83744fcbd955ed (diff)
downloadperlweeklychallenge-club-4ba7aef401725fc2c0c95434e91a412754aeeb73.tar.gz
perlweeklychallenge-club-4ba7aef401725fc2c0c95434e91a412754aeeb73.tar.bz2
perlweeklychallenge-club-4ba7aef401725fc2c0c95434e91a412754aeeb73.zip
Merge pull request #658 from jaldhar/challenge-026
Challenge 26 by Jaldhar H. Vyas
Diffstat (limited to 'challenge-026')
-rw-r--r--challenge-026/jaldhar-h-vyas/blog.txt1
-rwxr-xr-xchallenge-026/jaldhar-h-vyas/perl5/ch-1.sh2
-rwxr-xr-xchallenge-026/jaldhar-h-vyas/perl5/ch-2.pl28
-rwxr-xr-xchallenge-026/jaldhar-h-vyas/perl6/ch-1.sh1
-rwxr-xr-xchallenge-026/jaldhar-h-vyas/perl6/ch-2.p624
5 files changed, 56 insertions, 0 deletions
diff --git a/challenge-026/jaldhar-h-vyas/blog.txt b/challenge-026/jaldhar-h-vyas/blog.txt
new file mode 100644
index 0000000000..d3fb88e7df
--- /dev/null
+++ b/challenge-026/jaldhar-h-vyas/blog.txt
@@ -0,0 +1 @@
+https://www.braincells.com/perl/2019/09/perl_weekly_challenge_week_26.html
diff --git a/challenge-026/jaldhar-h-vyas/perl5/ch-1.sh b/challenge-026/jaldhar-h-vyas/perl5/ch-1.sh
new file mode 100755
index 0000000000..8dfb1803cf
--- /dev/null
+++ b/challenge-026/jaldhar-h-vyas/perl5/ch-1.sh
@@ -0,0 +1,2 @@
+perl -E '%a = map {$_ => 1} split //, $ARGV[0]; say scalar grep {exists $a{$_}} split //, $ARGV[1]' chancellor chocolate
+
diff --git a/challenge-026/jaldhar-h-vyas/perl5/ch-2.pl b/challenge-026/jaldhar-h-vyas/perl5/ch-2.pl
new file mode 100755
index 0000000000..6be6c6f933
--- /dev/null
+++ b/challenge-026/jaldhar-h-vyas/perl5/ch-2.pl
@@ -0,0 +1,28 @@
+#!/usr/bin/perl
+use warnings;
+use strict;
+use 5.010;
+
+use constant PI => (atan2 1, 1) * 4;
+
+sub deg2rad {
+ return $_[0] * (PI / 180);
+}
+
+sub rad2deg {
+ return $_[0] / (PI / 180);
+}
+
+my $sines = 0;
+my $cosines = 0;
+
+for my $angle (@ARGV) {
+ $sines += sin deg2rad($angle);
+ $cosines += cos deg2rad($angle);
+}
+
+$sines /= scalar @ARGV;
+$cosines /= scalar @ARGV;
+
+say rad2deg(atan2 $sines, $cosines);
+
diff --git a/challenge-026/jaldhar-h-vyas/perl6/ch-1.sh b/challenge-026/jaldhar-h-vyas/perl6/ch-1.sh
new file mode 100755
index 0000000000..0bdbd4d305
--- /dev/null
+++ b/challenge-026/jaldhar-h-vyas/perl6/ch-1.sh
@@ -0,0 +1 @@
+perl6 -e 'my @a = @*ARGS[0].comb ∩ @*ARGS[1].comb; @*ARGS[1].comb.grep({$_ ∈ @a.any }).elems.say;' chancellor chocolate
diff --git a/challenge-026/jaldhar-h-vyas/perl6/ch-2.p6 b/challenge-026/jaldhar-h-vyas/perl6/ch-2.p6
new file mode 100755
index 0000000000..fdeb247059
--- /dev/null
+++ b/challenge-026/jaldhar-h-vyas/perl6/ch-2.p6
@@ -0,0 +1,24 @@
+#!/usr/bin/perl6
+
+sub deg2rad ($deg) {
+ return $deg * (π / 180);
+}
+
+sub rad2deg($rad) {
+ return $rad / (π / 180);
+}
+
+multi sub MAIN(*@ARGS) {
+ my $sines = 0;
+ my $cosines = 0;
+
+ for @*ARGS -> $angle {
+ $sines += sin deg2rad($angle);
+ $cosines += cos deg2rad($angle);
+ }
+
+ $sines /= @*ARGS.elems;
+ $cosines /= @*ARGS.elems;
+
+ say rad2deg(atan2 $sines, $cosines).round;
+}