diff options
| -rw-r--r-- | challenge-089/gugod/raku/ch-2.raku | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/challenge-089/gugod/raku/ch-2.raku b/challenge-089/gugod/raku/ch-2.raku new file mode 100644 index 0000000000..6c8fe1b262 --- /dev/null +++ b/challenge-089/gugod/raku/ch-2.raku @@ -0,0 +1,27 @@ + +my @magic-squares = (1..9).permutations.grep( + -> ($a, $b, $c, $d, $e, $f, $g, $h, $i) { + all( + $a + $b + $c == 15, + $d + $e + $f == 15, + $g + $h + $i == 15, + $a + $d + $g == 15, + $b + $e + $h == 15, + $c + $f + $i == 15, + $a + $e + $i == 15, + $c + $e + $g == 15, + ) + } +); + +for @magic-squares -> @m { + print-magic-square(@m); +} + +sub print-magic-square (@m) { + say "+-----+"; + say "|" ~ @m[0,1,2].join(" ") ~ "|"; + say "|" ~ @m[3,4,5].join(" ") ~ "|"; + say "|" ~ @m[6,7,8].join(" ") ~ "|"; + say "+-----+"; +} |
