aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-089/mark-anderson/raku/ch-2.p610
-rw-r--r--challenge-089/mark-anderson/raku/out3
2 files changed, 4 insertions, 9 deletions
diff --git a/challenge-089/mark-anderson/raku/ch-2.p6 b/challenge-089/mark-anderson/raku/ch-2.p6
index cd40917e6c..e4c838d686 100644
--- a/challenge-089/mark-anderson/raku/ch-2.p6
+++ b/challenge-089/mark-anderson/raku/ch-2.p6
@@ -32,24 +32,22 @@ raku ch-2.p6 17
=end usage
-use Scalar::History;
-
unit sub MAIN(UInt $n where * mod 2 = 3); #= a positive odd integer
.say for odd-magic-square($n);
sub odd-magic-square($n) {
my @matrix = [0 xx $n] xx $n;
- my $r := Scalar::History.create(1);
- my $c := Scalar::History.create(($n / 2).floor - 1);
+ my $r = 1;
+ my $c = ($n / 2).floor - 1;
for 1..($n**2) -> $num {
$r = ($r - 1) mod $n;
$c = ($c + 1) mod $n;
if @matrix[$r][$c] {
- $r = $r.VAR.get-history.tail + 1;
- $c = $c.VAR.get-history.tail;
+ $r = ($r + 1) mod $n + 1;
+ $c = ($c - 1) mod $n;
}
@matrix[$r][$c] = $num;
diff --git a/challenge-089/mark-anderson/raku/out b/challenge-089/mark-anderson/raku/out
deleted file mode 100644
index 79953f3eed..0000000000
--- a/challenge-089/mark-anderson/raku/out
+++ /dev/null
@@ -1,3 +0,0 @@
-[8 1 6]
-[3 5 7]
-[4 9 2]