PHPによるアルゴリズム 奇数魔法陣
2022-08-26
2022-08-26
説明:
https://ja.wikipedia.org/wiki/%E9%AD%94%E6%96%B9%E9%99%A3
PHPソース:
```
<?php
function mahojin($n) {
$mahojin = [];
$i = 0;
$j = ($n + 1) / 2;
for ($k=1; $k<=$n*$n; $k++) {
if (($k % $n) == 1) { $i ++; }
else { $i --; $j ++; }
if ($i == 0) { $i = $n; }
if ($j > $n) { $j = 1; }
$mahojin[$i][$j] = $k;
}
return$mahojin;
}
$n = 5;
$mahojin = mahojin($n);
for ($i=1; $i<=$n; $i++) {
for ($j=1; $j<=$n; $j ++) {
printf("%5s", $mahojin[$i][$j]);
}
print("\n");
}
```
結果:
```
17 24 1 8 15
23 5 7 14 16
46132022
10 12 19 21 3
11 18 25 2 9
```