Lag et magisk firkant for alle tall - Excel-tips

For mange år siden jobbet jeg på Telxon med Dave Strong. Dave hadde nevnt at bestefaren ville utføre et triks der han ville be noen i rommet om hvilket som helst nummer. Han ville da tenke veldig hardt og sakte men bevisst bygge en 4x4 matrise. Hver rad, kolonne og diagonal med tall vil utgjøre nøyaktig det valgte tallet. Denne typen figurer kalles et magisk kvadrat.

Davies bestefar var Walter Wills Strong. Han var med KFUM i Europa under første verdenskrig og ville forbløffe troppene med dette mentale trikset. Da Dave introduserte problemet for meg, fant jeg en løsning for å lage den grunnleggende magiske firkanten med nummer 1 til 16 som legger til 34. Imidlertid var bestefaren til Daves i stand til å komme opp med en magisk firkant for hvilket som helst tall. Nå, mange år senere, har Dave oppdaget formelen for hvordan bestefaren gjorde dette trikset. Med litt øvelse kan du lære trikset selv. Denne ukens tips vil snakke om magiske firkanter. Det vil vise prosessen som ble brukt av Daves bestefar. Det vil også tilby to Excel-filer. Én Excel-fil beregner raskt et magisk kvadrat for et hvilket som helst tall. Den andre Excel-filen prøver å replikere den fremtredende naturen til forestillingen Daves bestefar må ha gitt,komplett med en skjegget veiviser.

Teorien for et grunnleggende magisk torg

En 4x4 matrise med tall har to diagonaler. På bildet nedenfor består en diagonal av de fire gule rutene. En diagonal består av de 4 røde rutene. De resterende 8 kantcellene er grønne.

For å konstruere en Magic Square for 34, skriver du ganske enkelt tallene fra 1 til 16 i rekkefølge. Det er en enkel vri. Hvis du er i ferd med å skrive et tall i en gul eller rød firkant, må du skrive tallet i cellen som er diagonalt motsatt fra den firkanten. For eksempel faller 1 som går i øvre venstre hjørne på en gul firkant. Cellen diagonalt overfor dette torget er faktisk det 16. firkanten, i nedre høyre hjørne. I stedet for å skrive 1 øverst til venstre, skriver du den nederst til høyre.

De neste to tallene, 2 og 3, vil falle i grønne firkanter, så skriv dem på sitt vanlige sted. Tallet 4 vil falle i en rød firkant, så i stedet for å skrive det i øvre høyre hjørne, skriv tallet 4 i nedre venstre hjørne.

Nummer 5 blir skrevet på riktig sted. 6 og 7 må bevege seg diagonalt, og 8 blir skrevet på riktig sted.

Fortsett dette mønsteret for tallene 9 til 16. Du ender til slutt opp med en enkel magisk firkant som legger opp til 34 i alle retninger

En interessant vri

Dave's bestefar hadde litt vri på dette. For bestefaren til Dave hadde han den motsatte regelen. Alt som falt på en rød eller gul firkant ble skrevet på rett sted. Alt som falt på en grønn kantcelle ble skrevet på den diagonalt motsatte firkanten. Hans grunnleggende firkant ville ha sett ut som denne.

Jeg foreslår at du lærer et av de to ovennevnte mønstrene og holder fast ved det. Jeg vil bruke mønsteret der tall i de røde eller gule diagonalene skrives diagonalt motsatt sin normale plassering.

Opprette en magisk firkant for alle tall

Hemmeligheten som Daves bestefar brukte, var å justere startnummeret. Han brukte en beregning i hodet for å finne et annet startnummer enn 1. Hvis du tenker på matematikken, består hver sum i det magiske torget av 4 celler. Hvis du la til en til hver celle, ville det magiske kvadratet utgjøre 38, fordi alle 4 cellene ville bli steget med 1. Her er et magisk kvadrat opprettet ved hjelp av heltallene fra 2 til 17 i stedet for 1 til 16. Det er totalt 38 i stedet for 34. All den andre logikken forblir den samme.

Nøkkelen til å skape et magisk firkant som legger opp til et hvilket som helst tall er å variere startnummeret. Med litt algebra kan du forstå hvorfor startnummeret følger denne formelen:

((Desired Number - 34) / 4 ) + 1

Her er Excel-arbeidsboken for å lage ønsket Magic Square: AnyMagicSquare.xls.

Magic Square Genie

Denne arbeidsboken bruker Excel VBA-makroer. For at genien skal fungere, må du la makroer kjøre når du åpner denne arbeidsboken. For å aktivere makroer, følg disse trinnene før du laster ned arbeidsboken.

  • Åpne Excel
  • Velg Verktøy> Makro> Sikkerhet på menyen
  • Endre innstillingen til Medium
  • Last ned og åpne arbeidsboken
  • Når arbeidsboken åpnes, vil du bli varslet om at makroer er til stede. Velg å aktivere.

Jeg skrev dette programmet for å simulere forestillingen til Daves bestefar. Selv om det ikke er så imponerende som noen som gjør matematikken personlig med blyant og papir, gir det deg fortsatt ideen om hvordan forestillingen vil gå. Klikk på Genie for å starte, og han vil be deg om et nummer. Genien tenker så på problemet.

Genien begynner sakte å fylle ut tall.

Når radene er fullført, lyser rad- og kolonnetotalene for å indikere at radene har rett.

Etter hvert får sjelen riktig firkant og tilbyr å gjøre en annen.

Last ned en versjon av Magic Square Genie med glidelås.

Et tips til hatten til Dave Strong og bestefaren Walter Wills Strong for å gi denne teknikken videre.

For å lære mer om bruk av VBA til å automatisere Excel-problemer, sjekk ut VBA og makroer for Microsoft Excel, skrevet av Bill Jelen og Tracy Syrstad.

Oppdatering fra desember 2005

En annen metode som bare bruker heltall

I november 2005 skrev Ray Battersby at det må være en måte å gjøre en magisk firkant for et hvilket som helst antall over 30 ved å bruke bare heltall uten desimaler. Ray identifiserte at du kunne legge til en til fire spesifikke celler i matrisen. I Magic Square for 34, ordne tallene i numerisk rekkefølge og ta annenhver celle fra og med den laveste. På bildet nedenfor identifiserte Ray cellene som inneholder 1, 3, 5 og 7.

For å endre dette til et magisk kvadrat for 35, legg til en til hver av de gule cellene.

For å bruke Rays metode, trekk 30 fra ønsket resultat. Del tallet med 4. Heltalsdelen blir startsifferet og resten blir tallet du legger til de fire gule cellene. For eksempel, for å lage et magisk kvadrat for 33:

  • 33-30 er 3
  • 3 delt på 4 er 0 med en rest på 3
  • Startnummeret er 0 som vist som mellomresultatet nedenfor
  • Legg 3 til hver av de gule cellene som vist i det endelige resultatet nedenfor

Som Ray bemerker betyr dette at noen av sifrene gjentas i matrisen.

Takk til Ray for at du delte denne metoden.

Oppdatering fra januar 2008

Richard Letsinger skrev inn for å merke seg at Rays metode ville fungere for et helt tall, positivt eller negativt. Metoden er ikke bare begrenset til heltall over 30.

Interessante artikler...