Det är oklart vem som först kom med en magisk fyrkant. Det finns en historia om en enorm översvämning i Kina för länge sedan. Folket var oroliga för att de skulle tvättas bort och försökte lugna flodguden genom att offra. Ingenting tycktes fungera förrän ett barn märkte en sköldpadda som spelade en magisk fyrkant på baksidan som fortsatte att omringa offret. Torget berättade för folket hur stort deras offer behövde vara för att rädda sig själva. Sedan dess har magiska fyrkanter varit höjden av mode för alla kräsna sköldpaddor.
Om du aldrig har stött på en tidigare, är en magisk fyrkant ett arrangemang av sekvensnummer i en kvadrat så att raderna, kolumnerna och diagonalerna lägger till samma nummer. Till exempel är en 3x3 magisk fyrkant:
Denna programmeringsövning handlar om att skapa magiska kvadrater med udda storlekar (dvs storleken på torget kan endast vara ett udda nummer, 3x3, 5x5, 7x7, 9x9, och så vidare). Tricket med att göra en sådan kvadrat är att placera nummer 1 i den första raden och den mellersta kolumnen. För att hitta var du ska placera nästa nummer, flytta diagonalt uppåt till höger (dvs en rad uppåt, en kolumn över). Om ett sådant drag betyder att du faller bort från torget, lindar du runt till raden eller kolumnen på motsatt sida. Slutligen, om flytten tar dig till en fyrkant som redan är fylld, gå tillbaka till den ursprungliga fyrkanten och flytta nedåt med en. Upprepa processen tills alla rutorna är fyllda.
Nu leder diagonalen uppåt till en kvadrat som redan är fylld, så vi går tillbaka till dit vi kom ifrån och släpper ned en rad: