ΜΑΓΙΚΑ
ΤΕΤΡΑΓΩΝΑ ΠΕΡΙΤΤΗΣ ΤΑΞΗΣ
Τα
μαγικά τετράγωνα είναι διδιάστατοι πίνακες (NxN) που περιέχουν τους αριθμούς
1,2,3,…...,Ν2 σαν στοιχεία τους, τοποθετημένους κατά τέτοιον
τρόπο ώστε το άθροισμα οποιαδήποτε στήλης, γραμμής ή διαγωνίου να είναι
σταθερό και ίσο προς Ν(1+ Ν2)/2.
Μερικά
παραδείγματα φαίνονται στα παρακάτω σχήματα.
|
17
|
24
|
1
|
8
|
15
|
23
|
5
|
7
|
14
|
16
|
4
|
6
|
13
|
20
|
22
|
10
|
12
|
19
|
21
|
3
|
11
|
18
|
25
|
2
|
9
|
|
Ο
αλγόριθμος κατασκευής των μαγικών τεραγώνων περιττής τάξης
του
de la Loubere (17ος αιών) έχει ως εξής:
Πρώτα
τοποθετούμε τον αριθμό 1 στο μεσαίο τετραγωνάκι της πρώτης (πάνω) γραμμής.
Oι
επόμενοι αριθμοί τοποθετούνται με την φυσική τους σειρά ο ένας μετά τον
άλλον διαγωνίως προς τα πάνω και δεξιά με τις εξής διαφοροποιήσεις:
-
Οταν
ξεπεράσουμε την πρώτη γραμμή (και βγαίνουμε έξω από το τετράγωνο προς τα
πάνω) ο αριθμός τοποθετείται στην τελευταία γραμμή του τετραγώνου (σαν
αυτή να ήταν ακριβώς πάνω από την πρώτη).
-
Ομοίως,
όταν ξεπεράσουμε και την πιο δεξιά στήλη (και βγαίνουμε έξω από το τετράγωνο
προς τα δεξιά) ο αριθμός τοποθετείται στην πρώτη στήλη (αριστερή).
-
Οταν
φθάσουμε σε τεραγωνάκι που είναι ήδη γεμάτο, ο αριθμός τοποθετείται στο
τεραγωνάκι ακριβώς κάτω από τον τελευταίο τοποθετημένο αριθμό.
Κατασκευάστε
ένα πρόγραμμα (Fortran) που θα κατασκευάζει
περιττής
τάξης μαγικά τετράγωνα (ΝxN) με Ν < 30.