|
S? se construiasc? un p?trat magic de dimensiune n ( cu n impar), adic? o matrice cu n linii si n coloane având ca elemente numerele naturale 1, 2, ..., n^2 astfel încât sumele elementelor pe linii, pe coloane si pe cele doua diagonale sa fie identice.
Introducere:
Un p?trat magic const? dintr-un tablou de numere aranjate în forma unui p?trat, astfel încât sumele elementelor din fiecare linie, coloan? ?i din cele dou? diagonale s? fie identice; valoarea sumei se nume?te num?r magic. Un p?trat magic este de ordin n dac? pe o latur? a sa sunt a?ezate n numere, iar în componen?a sa intr? numerele 1, 2, 3…, n2; atunci num?rul magic poate fi calculat cu formula: num?r magic = n(n2+1)/2.
Exist? un singur p?trat magic de ordinul 3 (cu toate c? prin rota?ii ?i simetrii pot fi ob?inute 8 astfel de p?trate):
4 3 8
9 5 1
2 7 6
P?tratele magice de ordin 4 sunt în num?r de 880 (7040 dac? sunt considerate ?i rota?iile ?i simetriile), iar num?rul p?tratelor magice de ordin 5 este de circa 13.000.000.
Sunt cunoscute mai multe metode de ob?inere a p?tratelor magice, ele diferind pentru p?tratele de ordin par, respectiv impar.
Metoda:
O metod? foarte simpl? const? în urm?toarele ac?iuni:
• Se plaseaz? 1 în centrul ultimei coloane;
• Se merge în linie oblic?, dreapta-jos, cu num?rul urm?tor; dac? se iese din p?trat prin partea dreapt?, se merge în partea opus?, în stânga liniei unde trebuia depus num?rul, iar dac? se iese prin partea de jos a p?tratului, se merge în partea de sus a coloanei unde trebuia depus num?rul;
• Dup? ce se completeaz? un grup de n numere, se merge cu o c?su?? spre stânga, pe aceea?i linie, pentru a se repeta apoi pasul 2 ?i a genera urm?torul grup de n numere.
Se ob?ine în final urm?torul p?trat magic:
11 10 4 23 17
18 12 6 5 24
25 19 13 7 1
2 21 20 14 8
9 3 22 16 15
Despre program:
Programul permite 2 tipuri de afi?are a p?tratului magic:
1. Direct
• programul afi?eaz? p?tratul chiar dac? nu o s? încap? pe ecran
2. Pas cu pas
• dup? fiecare num?r afi?at trebuie ap?sat? o tast?
• se vor afi?a numai p?tratele cu n<15. Pentru n>15 afi?area se va face numai în mod 'Direct'
Sursa programului:
|