lunedì 21 ottobre 2013

Quadrati Magici


Non so se avete presente il mio amico Albrecht, quello del disegno qui sopra. È bravo sì, molto ma a volte si lascia prendere dalla malinconia, proprio come me quando installo la nuova versione di Ubuntu e dopo non funziona più niente.
Ma non volevo parlarvi di me, no, una cosa molto più bella (forse). Se fate attenzione all'incisione nel muro, sotto la campana trovate un quadrato magico, di ordine 4, questo:


Se volete saperne di più la Wiki vi racconta tutto.

Ecco io volevo farvi vedere come sono bravo a fare i quadrati magici. Non è possibile costruirne uno con lato 2, il più piccolo è il 3, questo:

   8   1   6
   3   5   7
   4   9   2

poi seguono gli altri, 4:

   16    2    3   13
    5   11   10    8
    9    7    6   12
    4   14   15    1

quasi uguale a quello del Dürer, ma ecco il 5:

   17   24    1    8   15
   23    5    7   14   16
    4    6   13   20   22
   10   12   19   21    3
   11   18   25    2    9

6:

   35    1    6   26   19   24
    3   32    7   21   23   25
   31    9    2   22   27   20
    8   28   33   17   10   15
   30    5   34   12   14   16
    4   36   29   13   18   11

10:

    92    99     1     8    15    67    74    51    58    40
    98    80     7    14    16    73    55    57    64    41
     4    81    88    20    22    54    56    63    70    47
    85    87    19    21     3    60    62    69    71    28
    86    93    25     2     9    61    68    75    52    34
    17    24    76    83    90    42    49    26    33    65
    23     5    82    89    91    48    30    32    39    66
    79     6    13    95    97    29    31    38    45    72
    10    12    94    96    78    35    37    44    46    53
    11    18   100    77    84    36    43    50    27    59


20: no, troppo grande non ci sta nel browser ma saprei farlo, anzi anche più grandi.

Juhan stai trollando vero? (quasi-cit).
Er! sì. Cioè no, era a fin di bene, adesso vi spiego.


Sto usando Octave, un linguaggio di programmazione molto sexy, freeware, c'è anche per Windows, qui.
E guarda com'è facile:


Adesso potrei cominciare a parlare di matematica, dire cose del tipo che il quadrato di lato L contiene i numeri da 1 a L2 la cui somma è S = (1 + L2) * L / 2 (c'è anche un aneddoto al riguardo, con protagonista Gauss da piccolo, se volete ve lo racconto) e che quindi ogni riga e diagonale deve sommare S / L.
E già che ci sono si potrebbe fare un piccolo programmino di verifica, proporrei Python (che è semplice-semplice) e Octave stesso, che le matrici sono proprio il suo pane. Se volete ci faccio un post, se siamo dell'idea che wir müssen wissen, wir werden wissen) (cit.).


E parlando di matrici mi viene proprio da pensare a Hilbert, l'equivalente di Feynman per i matematici (sì, ce ne sono anche altri).
Non m'è riuscito invece (e dire che ci ho provato, non immaginate quanto) di usare la parola eigenvalue.

6 commenti:

  1. Beh, si, tu hai trollato (per un buon motivo), ma quello che non mi aspettavo è che trollasse anche Octave. Quei quadrati che ti ha "rilasciato" Octave si possono costruire semplicemente anche senza l'ausilio di nessun software, semplicemente utilizzando algoritmi logici (conoscendoli).
    E visto che parliamo di trollatori, esiste la remota (forse) possibilità che anche Dürer abbia trollato: QUI ho provato a fare un'ipotesi.

    RispondiElimina
    Risposte
    1. Mitico!
      E io che mi pensavo di aver detto qualcosa di nuovo.
      Facciamo che mi dedico al giardinaggio, fino a primavera, poi esce il libro di Marco. Sono a posto fino a giugno (circa).

      Elimina
    2. Ci sono software che "millantano". Non ho mai provato Octave, ma guarda caso, gli esempi di quadrati presentati (non ho verificato quello da 10) sono tutti perfetti esempi da "guida alla costruzione tramite apposite procedure (Algoritmi logici)". Poi magari Octave è straottimissimo per tutto il resto.
      Se esistesse un algoritmo matematico per la risoluzione di ogni tipo di quadrato magico sarebbe una gran figata, ma così non è; tu pensa che con precisione non si conosce neanche il numero di quadrati unici costruibili per ogni "ordine":
      1 (1x1)
      1 (3x3)
      880 (4x4)
      275305224 (5x5)
      Il numero per n = 6 è stato valutato intorno a 1.7745×10^19.(6x6)
      Impossibile (per ora) anche solo immaginare quanti quadrati unici possano essere costruiti in un quadrato di ordine n 7.


      Elimina
    3. Octave è un programma molto serio, la versione freeware di Matlab. Per i quadrati magici ha solo la funzione magic() e per quel che ne so è un easter egg. Matlab è usatissimo in campo scientifico/ingegneristico, prossimamente me ne occupo anch'io su OP, panico ma solo a livello introduttivo: è troppo tosto!

      Elimina
    4. Mi stavo giusto informando, e da quello che ho letto sembra essere proprio un gran bel programma; poi è free il che non guasta.
      Il termine "millantano" è esagerato (soprattutto riferito ad un easter egg) ma non voleva essere comunque negativo, forse avrei dovuto scrivere "nascondono". Faccio un esempio perché altrimenti rischio di non farmi capire:
      ci sono software che dicono di calcolare e/o verificare se un numero è primo ed invece utilizzano un DTB a cui accedono per poi "rispondere". Ci mancherebbe, va benissimo così, ma una maggiore "chiarezza" sulle procedure utilizzate sarebbe gradita, anche perché altrimenti poi esce fuori il nerd/ragazzino che sui forum (o magari a scuola) se ne esce con frasi del tipo: "l'enigma dei numeri primi è una gran cavolata, c'è un software che...".

      Su Matlab invece sono un po' (ma solo un po') più preparato perché l'ho usato qualche volta; ce l'ho installato e a necessità lo utilizzo. Mi farà sicuramente piacere leggere quello che pubblicherai su OP.

      Elimina