Luo taika-aukko mille tahansa numerolle - Excel-vinkit

Monta vuotta sitten työskentelin Telxonissa Dave Strongin kanssa. Dave oli maininnut, että hänen isoisänsä tekisi temppu, jossa hän pyysi joku huoneessa mitä tahansa numeroa. Sitten hän ajatteli kovasti ja rakensi hitaasti mutta tarkoituksellisesti 4x4-matriisin. Jokainen numeroiden rivi, sarake ja lävistäjä täsmää valitun luvun kanssa. Tämän tyyppistä kuvaa kutsutaan maagiseksi neliöksi.

Dave-isoisä oli Walter Wills Strong. Hän oli YMCA: n luona Euroopassa ensimmäisen maailmansodan aikana ja hämmästyttäisi joukkoja tällä henkisellä temppulla. Kun Dave esitteli ongelman minulle, löysin ratkaisun perustavan maagisen neliön luomiseen numeroilla 1 - 16, joka lisää 34: tä. Dave-isoisä pystyi kuitenkin keksimään taika-neliön mille tahansa numerolle. Nyt, monta vuotta myöhemmin, Dave on löytänyt kaavan kuinka isoisänsä teki tämän temppun. Pienellä harjoittelulla voit oppia temppu itse. Tämän viikon vinkki kertoo taikuudesta. Se näyttää prosessin, jota Dave-isoisä käytti. Se tarjoaa myös kaksi Excel-tiedostoa. Yksi Excel-tiedosto laskee nopeasti maagisen neliön mille tahansa numerolle. Toinen Excel-tiedosto yrittää jäljitellä Dave-isoisän täytyneen luovan luonteen luonnetta,täydellinen parrakas velho.

Maagisen neliön teoria

4x4-numeroisessa matriisissa on kaksi lävistäjää. Alla olevassa kuvassa yksi lävistäjä koostuu neljästä keltaisesta neliöstä. Yksi lävistäjä koostuu 4 punaisesta neliöstä. Loput 8 reunasolua ovat vihreitä.

Rakentaaksesi Taika-neliön 34: lle, kirjoita vain numerot 1-16 järjestyksessä. On yksi helppo käänne. Jos aiot kirjoittaa numeron keltaiseen tai punaiseen neliöön, sinun on kirjoitettava numero soluun, joka on vinosti vastapäätä tätä neliötä. Esimerkiksi vasemmassa yläkulmassa oleva 1 putoaa keltaiselle neliölle. Solua vinosti tätä neliötä vastapäätä on oikeastaan ​​16. neliö oikeassa alakulmassa. Sen sijaan, että kirjoittaisit vasempaan yläkulmaan 1, kirjoita se oikeaan alakulmaan.

Seuraavat kaksi numeroa, 2 ja 3 putoaisivat vihreiksi neliöiksi, joten kirjoita ne normaaliin paikkaansa. Numero 4 putoaisi punaiseen neliöön, joten kirjoita numero 4 vasempaan alakulmaan sen sijaan, että kirjoittaisit sen oikeaan yläkulmaan.

Numero 5 kirjoitetaan oikeaan paikkaan. 6 ja 7 täytyy liikkua vinosti, ja 8 kirjoitetaan oikeaan paikkaan.

Jatka tätä mallia numeroille 9-16. Lopulta pääset yksinkertaiselle maagiselle neliölle, joka lisää jopa 34 kaikkiin suuntiin

Mielenkiintoinen kierre

Dave-isoisällä oli tässä hieman vääntö. Dave-isoisälle hänellä oli päinvastainen sääntö. Kaikki, mikä putosi punaiselle tai keltaiselle neliölle, kirjoitettiin oikeaan paikkaan. Kaikki, mikä putosi vihreän reunan soluun, kirjoitettiin vinosti vastakkaiselle neliölle. Hänen perusneliönsä olisi näyttänyt tältä.

Ehdotan, että opit jommankumman yllä olevista kuvioista ja pidät kiinni siitä. Käytän mallia, jossa punaisen tai keltaisen lävistäjän numerot kirjoitetaan vinosti vastakkain niiden normaaliin sijaintiin.

Maagisen neliön luominen mille tahansa numerolle

Dave-isoisän salaisuutena oli muuttaa hänen lähtönumeroa. Hän käytti päänsä laskutoimitusta selvittääkseen muun aloitusnumeron kuin 1. Jos ajattelet matematiikkaa, jokainen taika-neliön summa koostuu 4 solusta. Jos lisäät yhden jokaiseen soluun, maagisen neliön kokonaismäärä on 38, koska kaikkia 4 solua korotettaisiin arvolla 1. Tässä on taika-neliö, joka on luotu käyttämällä kokonaislukuja 2–17 eikä 1–16. Se on yhteensä 38 sijasta 34. Kaikki muu logiikka pysyy samana.

Avain maagisen neliön luomiseen, joka lisää minkä tahansa luvun, on muuttaa aloitusnumeroa. Pienellä algebralla voit ymmärtää, miksi lähtönumero noudattaa tätä kaavaa:

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

Tässä on Excel-työkirja haluamasi Magic Square: AnyMagicSquare.xls: n luomiseksi.

Magic Square Genie

Tämä työkirja käyttää Excel VBA -makroja. Jotta genie toimisi, sinun on sallittava makrojen suorittaminen, kun avaat tämän työkirjan. Ota makrot käyttöön noudattamalla näitä vaiheita ennen työkirjan lataamista.

  • Avaa Excel
  • Valitse valikosta Työkalut> Makro> Suojaus
  • Vaihda asetukseksi Medium
  • Lataa ja avaa työkirja
  • Työkirjan avautuessa sinulle ilmoitetaan, että makrot ovat läsnä. Valitse Ota käyttöön.

Kirjoitin tämän ohjelman simuloimaan Dave-isoisän esitystä. Vaikka se ei olekaan niin vaikuttava kuin joku, joka tekee matematiikkaa henkilökohtaisesti lyijykynällä ja paperilla, se antaa silti käsityksen esityksen sujumisesta. Napsauta Genie aloittaaksesi, ja hän pyytää sinulta numeroa. Genie miettii sitten ongelmaa.

Genie alkaa hitaasti täyttää numeroita.

Kun rivit ovat valmiit, rivien ja sarakkeiden summa syttyy osoittamaan, että rivit ovat oikeat.

Lopulta henki saa oikean neliön ja tarjoaa uuden.

Lataa Magic Square Genien pakattu versio.

Hattukärki Dave Strongille ja hänen isoisälle Walter Wills Strongille tämän tekniikan siirtämisestä.

Jos haluat lisätietoja VBA: n käytöstä Excel-ongelmien automatisointiin, tutustu VBA ja makrot Microsoft Exceliin, kirjoittanut Bill Jelen ja Tracy Syrstad.

Päivitys joulukuusta 2005

Toinen menetelmä, jossa käytetään vain kokonaislukuja

Marraskuussa 2005 Ray Battersby kirjoitti, että jokaiselle yli 30 luvulle on oltava tapa tehdä taika-neliö käyttämällä vain kokonaislukuja ilman desimaaleja. Ray tunnisti, että voit lisätä yhden tai neljä tiettyä solua matriisiin. Järjestä 34-taika-aukiossa numerot numerojärjestyksessä ja ota kaikki muut solut, jotka alkavat pienimmällä. Alla olevassa kuvassa Ray tunnisti solut, jotka sisältävät 1, 3, 5 ja 7.

Jos haluat muuttaa tämän maagiseksi neliöksi 35: lle, lisää yksi kullekin keltaiselle solulle.

Jos haluat käyttää Rayn menetelmää, vähennä 30 halutusta tuloksesta. Jaa luku 4: llä. Lukuosasta tulee alkunumero ja lopusta luku, jonka lisäät neljään keltaiseen soluun. Esimerkiksi, kun haluat luoda maagisen neliön 33: lle:

  • 33-30 on 3
  • 3 jaettuna 4: llä on 0 ja loput 3
  • Aloitusnumero on 0, kuten alla olevassa välituloksessa näkyy
  • Lisää 3 kuhunkin keltaiseen soluun alla olevan lopputuloksen mukaisesti

Kuten Ray huomauttaa, tämä tarkoittaa, että osa numeroista toistuu matriisissa.

Kiitos Raylle tämän menetelmän jakamisesta.

Päivitys tammikuusta 2008

Richard Letsinger kirjoitti huomauttamaan, että Rayn menetelmä toimii kaikilla positiivisilla tai negatiivisilla kokonaisluvuilla. Menetelmä ei rajoitu vain yli 30: n kokonaislukuihin.

Mielenkiintoisia artikkeleita...