diff options
| author | Walt Mankowski <waltman@pobox.com> | 2020-12-01 19:31:54 -0500 |
|---|---|---|
| committer | Walt Mankowski <waltman@pobox.com> | 2020-12-01 19:31:54 -0500 |
| commit | 8d3d52cae9fa4bb4d6c3bf9f98bad3f7a2a4dfc3 (patch) | |
| tree | 139513b111955b1f9b3f0f5645a7e93b5abacddc | |
| parent | 8ee24e8301cd8c63456e24617c3661437cb83054 (diff) | |
| download | perlweeklychallenge-club-8d3d52cae9fa4bb4d6c3bf9f98bad3f7a2a4dfc3.tar.gz perlweeklychallenge-club-8d3d52cae9fa4bb4d6c3bf9f98bad3f7a2a4dfc3.tar.bz2 perlweeklychallenge-club-8d3d52cae9fa4bb4d6c3bf9f98bad3f7a2a4dfc3.zip | |
Perl code for Challenge 89 task 2
| -rw-r--r-- | challenge-089/walt-mankowski/perl/ch-2.pl | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/challenge-089/walt-mankowski/perl/ch-2.pl b/challenge-089/walt-mankowski/perl/ch-2.pl new file mode 100644 index 0000000000..850cc370b0 --- /dev/null +++ b/challenge-089/walt-mankowski/perl/ch-2.pl @@ -0,0 +1,35 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use feature qw(:5.32); +use experimental qw(signatures); + +# TASK #2 › Magical Matrix +# +# Write code to produce a 3x3 magic square + +my @m; +my $m = 3; +my $r = 0; +my $c = 1; + +# fill in the magic square using the Siamese method +for my $i (1..9) { + $m[$r][$c] = $i; + my $r1 = ($r - 1) % $m; + my $c1 = ($c + 1) % $m; + if (defined $m[$r1][$c1]) { + $r = ($r + 1) % $m; + } else { + $r = $r1; + $c = $c1; + } +} + +# print the result +for my $r (0..$m-1) { + for my $c (0..$m-1) { + print "$m[$r][$c] "; + } + print "\n"; +} |
