第9講 4次魔方陣と6次魔方陣の作成
第1話 魔方陣とは?

第6講の一番最後に予告した通り、第9講では魔方陣を扱います。
詳しくは、本サイトのメニューの魔方陣を参照して頂きたいと思いますが、
次のような方陣を魔方陣と言います。



11 16
15 12
14
10 13


13 19 25
18 24 12
10 11 17 23
22 15 16
14 20 21

皆さんどうなっているか、お分かりですか。そうです。各行、各列の合計が同じになっています。
それだけですか。
対角線の合計も同じになっています。
このような方陣を魔方陣と言います。
そして、一辺が3のとき3次魔方陣、一辺が4のとき4次魔方陣などと言います。
学習が進むと、すべての魔方陣(例えば、22次魔方陣)などに挑戦することになりますが、
とりあえずこの第9講では、4次魔方陣と6次魔方陣の作成に挑戦します。
4次魔方陣と6次魔方陣には、とっても簡単な解法が存在するからです。

4次魔方陣の方から説明しましょう。

まず、普通の自然配列を考えます。

 1  2  3  4
 5  6  7  8
 9 10 11 12
13 14 15 16

この段階ですでに対角線の合計が34になっています。そして、

 1  2  3  4
 5  6  7  8
 9 10 11 12
13 14 15 16

対角線のところを4次方陣の真ん中を中心にして点対称移動をしてみましょう。

16  2  3 13
 5 11 10  8
 9  7  6 12
 4 14 15  1


16  2  3 13
 5 11 10  8
 9  7  6 12
 4 14 15  1

そうすると不思議なことに、すべての横合計、縦合計が同じ34になっています。
つまり、4次魔方陣が完成してしまったわけです。

6次魔方陣になるともう少し複雑ですが、似た方法でできます。

最初に自然配列を作ります。

 1  2  3  4  5  6
 7  8  9 10 11 12
13 14 15 16 17 18
19 20 21 22 23 24
25 26 27 28 29 30
31 32 33 34 35 36

そして、

 1  2  3  4  5  6
 7  8  9 10 11 12
13 14 15 16 17 18
19 20 21 22 23 24
25 26 27 28 29 30
31 32 33 34 35 36

ピンクは中心に対して点対称移動、
薄緑は中央の直線に対して上下に線対称移動、
紺色は中央の直線に対して左右に線対称移動
を行います。すると、

36 32  4  3  5 31
12 29 27 10 26  7
19 17 22 21 14 18
13 20 16 15 23 24
25 11  9 28  8 30
 6  2 33 34 35  1


36 32  4  3  5 31
12 29 27 10 26  7
19 17 22 21 14 18
13 20 16 15 23 24
25 11  9 28  8 30
 6  2 33 34 35  1

となり6次魔方陣が完成します。

(これを不思議だと感じた方は、是非とも魔方陣をクリックしてすべてのページに目を通してください。
いまでこそ初心者のためのVisual Basic入門講義での訪問者が第1位になるようになりましたが
(そしておそらく初心者のためのVisual C++入門講義基礎編がまもなくそれに迫るでしょうが。)、
以前の本サイトの最大ヒット数を稼いだページは魔方陣でした。
本サイトは、魔方陣の研究から始まったのです。)
この方法で、Visual C++によって魔方陣を作成しようというのが第9講です。


4次魔方陣の方から挑戦していきましょう。

それでは皆さん、ビルドして作成ボタンを押すと
となるソフトを作りましょう。


第8講第6話へ 第2話へ



初心者のためのjava 入門 基礎から応用まで
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第1部
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第2部
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第3部
vb講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすい vb 入門 vba 入門 基礎から応用まで 第1部
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ