aboutsummaryrefslogtreecommitdiff
path: root/challenge-030
diff options
context:
space:
mode:
authorJaldhar H. Vyas <jaldhar@braincells.com>2019-10-18 01:07:09 -0400
committerJaldhar H. Vyas <jaldhar@braincells.com>2019-10-18 01:07:09 -0400
commitcbfed40907b083a6efe5304b89f4575937a676a2 (patch)
tree5d6b8c53a6c686c58338248fe9e9f3952c954f5d /challenge-030
parent58dac7fdbda73e9040ee71d8d582291caf66b0d3 (diff)
downloadperlweeklychallenge-club-cbfed40907b083a6efe5304b89f4575937a676a2.tar.gz
perlweeklychallenge-club-cbfed40907b083a6efe5304b89f4575937a676a2.tar.bz2
perlweeklychallenge-club-cbfed40907b083a6efe5304b89f4575937a676a2.zip
challenge 30 by Jaldhar H. Vyas
Diffstat (limited to 'challenge-030')
-rw-r--r--challenge-030/jaldhar-h-vyas/blog.txt1
-rwxr-xr-xchallenge-030/jaldhar-h-vyas/perl5/ch-1.pl19
-rwxr-xr-xchallenge-030/jaldhar-h-vyas/perl5/ch-2.pl15
-rwxr-xr-xchallenge-030/jaldhar-h-vyas/perl6/ch-1.sh1
-rwxr-xr-xchallenge-030/jaldhar-h-vyas/perl6/ch-2.p614
5 files changed, 50 insertions, 0 deletions
diff --git a/challenge-030/jaldhar-h-vyas/blog.txt b/challenge-030/jaldhar-h-vyas/blog.txt
new file mode 100644
index 0000000000..44826a07b0
--- /dev/null
+++ b/challenge-030/jaldhar-h-vyas/blog.txt
@@ -0,0 +1 @@
+https://www.braincells.com/perl/2019/10/perl_weekly_challenge_week_30.html \ No newline at end of file
diff --git a/challenge-030/jaldhar-h-vyas/perl5/ch-1.pl b/challenge-030/jaldhar-h-vyas/perl5/ch-1.pl
new file mode 100755
index 0000000000..f6ab7fc1e3
--- /dev/null
+++ b/challenge-030/jaldhar-h-vyas/perl5/ch-1.pl
@@ -0,0 +1,19 @@
+#!/usr/bin/perl
+use warnings;
+use strict;
+use 5.010;
+
+sub isLeap {
+ my ($year) = @_;
+
+ # years divisible by 100 are not leap years unless they are divisble by 400.
+ return ($year % 4 == 0 && ($year % 100 != 0 || $year % 400 == 0));
+}
+
+my $newYearDay = 3;
+for my $year (2020 .. 2101) {
+ if ($newYearDay % 7 == 0) {
+ say $year - 1, '-12-25';
+ }
+ $newYearDay += (isLeap($year)) ? 2 : 1;
+} \ No newline at end of file
diff --git a/challenge-030/jaldhar-h-vyas/perl5/ch-2.pl b/challenge-030/jaldhar-h-vyas/perl5/ch-2.pl
new file mode 100755
index 0000000000..b392145c34
--- /dev/null
+++ b/challenge-030/jaldhar-h-vyas/perl5/ch-2.pl
@@ -0,0 +1,15 @@
+#!/usr/bin/perl
+use warnings;
+use strict;
+use 5.010;
+
+my %results;
+
+for my $i (1 .. 10) {
+ for my $j (1 .. (12 - $i - 1)) {
+ my $k = 12 - $i - $j;
+ $results{join q{ }, sort ($i, $j, $k)}++;
+ }
+}
+
+say for sort keys %results; \ No newline at end of file
diff --git a/challenge-030/jaldhar-h-vyas/perl6/ch-1.sh b/challenge-030/jaldhar-h-vyas/perl6/ch-1.sh
new file mode 100755
index 0000000000..dd1e60c8df
--- /dev/null
+++ b/challenge-030/jaldhar-h-vyas/perl6/ch-1.sh
@@ -0,0 +1 @@
+perl6 -e '"$_-12-25".say for (2019..2100).grep({Date.new($_,12,25).day-of-week==0;});'
diff --git a/challenge-030/jaldhar-h-vyas/perl6/ch-2.p6 b/challenge-030/jaldhar-h-vyas/perl6/ch-2.p6
new file mode 100755
index 0000000000..432bd84ba3
--- /dev/null
+++ b/challenge-030/jaldhar-h-vyas/perl6/ch-2.p6
@@ -0,0 +1,14 @@
+#!/usr/bin/perl6
+
+sub MAIN() {
+ my %results;
+
+ for (1 .. 10) -> $i {
+ for (1 .. (12 - $i - 1)) -> $j {
+ my $k = 12 - $i - $j;
+ %results{($i, $j, $k).sort.join(q{ })}++;
+ }
+ }
+
+ .say for %results.keys.sort;
+} \ No newline at end of file