Edellisessä tarinassani loin GeoGebralla sovelluksen, jonka avulla voi tutkia Sagreda Familian seinällä sijaitsevaa Subirachsin taikaneliötä. Kuinka monta sellaista neljän luvun ryhmää luvuista 1,14, 14, 4, 11, 7, 6, 9, 8, 10, 10, 5, 13, 2, 3, 15 saa siten, että niiden summa on 33?
Yritin ensin tuottaa sisäkkäisiä silmukoita GeoGebralla, mutta tässä tapauksessa lauseke menee niin monimutkaiseksi, että minun pääni ei kestä. Niinpä vaihdoin kielen Pythoniin ja kirjoitin koodinpätkän. Sen perusteella neljän luvun ryhmiä on 88.

Ensimmäisellä rivillä ladataan itertools-kirjasto, jotta combinations() saadaan käyttöön. combinations(luvut,4) tuottaa listan, jossa on kaikki luvut-listan neljän mittaiset kombinaatiot. Niitähän on nCr(16,4) = 1820 kappaletta. Loppu koodista lienee ymmärrettävissä; for-silmukassa tutkitaan summia ja lisätään oikeat tulos-listaan. len(tulos) laskee tulos-listan pituuden.
Alla ohjelman tuottama tulos.
[(1, 14, 14, 4), (1, 14, 11, 7), (1, 14, 8, 10), (1, 14, 8, 10), (1, 14, 5, 13), (1, 14, 3, 15), (1, 14, 11, 7), (1, 14, 8, 10), (1, 14, 8, 10), (1, 14, 5, 13), (1, 14, 3, 15), (1, 4, 13, 15), (1, 11, 6, 15), (1, 11, 8, 13), (1, 7, 10, 15), (1, 7, 10, 15), (1, 9, 8, 15), (1, 9, 10, 13), (1, 9, 10, 13), (14, 14, 2, 3), (14, 4, 7, 8), (14, 4, 6, 9), (14, 4, 10, 5), (14, 4, 10, 5), (14, 4, 13, 2), (14, 11, 6, 2), (14, 11, 5, 3), (14, 7, 9, 3), (14, 7, 10, 2), (14, 7, 10, 2), (14, 6, 8, 5), (14, 6, 10, 3), (14, 6, 10, 3), (14, 9, 8, 2), (14, 4, 7, 8), (14, 4, 6, 9), (14, 4, 10, 5), (14, 4, 10, 5), (14, 4, 13, 2), (14, 11, 6, 2), (14, 11, 5, 3), (14, 7, 9, 3), (14, 7, 10, 2), (14, 7, 10, 2), (14, 6, 8, 5), (14, 6, 10, 3), (14, 6, 10, 3), (14, 9, 8, 2), (4, 11, 8, 10), (4, 11, 8, 10), (4, 11, 5, 13), (4, 11, 3, 15), (4, 7, 9, 13), (4, 6, 8, 15), (4, 6, 10, 13), (4, 6, 10, 13), (4, 9, 10, 10), (4, 9, 5, 15), (11, 7, 6, 9), (11, 7, 10, 5), (11, 7, 10, 5), (11, 7, 13, 2), (11, 6, 13, 3), (11, 9, 8, 5), (11, 9, 10, 3), (11, 9, 10, 3), (11, 10, 10, 2), (11, 5, 2, 15), (7, 6, 10, 10), (7, 6, 5, 15), (7, 9, 2, 15), (7, 8, 5, 13), (7, 8, 3, 15), (7, 10, 13, 3), (7, 10, 13, 3), (6, 9, 8, 10), (6, 9, 8, 10), (6, 9, 5, 13), (6, 9, 3, 15), (6, 10, 2, 15), (6, 10, 2, 15), (9, 8, 13, 3), (8, 10, 10, 5), (8, 10, 13, 2), (8, 10, 13, 2), (10, 5, 3, 15), (10, 5, 3, 15), (13, 2, 3, 15)]
nelikkoja on 88
[edit. 1.3.19 lisäsin muutaman virkkeen liittyen Python ohjelmaan. Vaihdoin ohjelmakoodin kuvan parempaan.]