Met de schrapkaarten kon geen interactief programma geschreven worden. De uitvoer moest printbaar zijn op “brede wagen kettingpapier” (132 karakters).
Met hulp van een formule uit het wiskunde tijdschrift Pythagoras kon ik een tover vierkant programmeren van 26×26 (!); meer paste er niet op 1 print regel (132 tekens bij ‘brede wagen’ ketting papier).
Dit is 16×16:
Anno 2025 vraag je dit simpelweg aan ‘Co-pilot’: “schrijf een python programma waarmee een tovervierkant van 25 x 25 gemaakt kan worden”
Resultaat:
def generate_magic_square(n):
# Maak een leeg tovervierkant
magic_square = [[0] * n for _ in range(n)]
# Startpositie voor 1
i, j = 0, n // 2
# Vul het tovervierkant met getallen
num = 1
while num <= n * n:
# Plaats het huidige nummer op de huidige positie
magic_square[i][j] = num
num += 1
# Bereken de nieuwe positie
newi, newj = (i - 1) % n, (j + 1) % n
# Als de nieuwe positie al bezet is, ga een rij naar beneden
if magic_square[newi][newj]:
i += 1
else:
i, j = newi, newj
return magic_square
# Genereer een 25x25 tovervierkant
magic_square_25x25 = generate_magic_square(25)
# Print het tovervierkant
for row in magic_square_25x25:
print(row)
Een aanzienlijk eenvoudiger algorithme dan wat ik gebruikte!