Il comando Cramer[]. Prima versione.

   Supponiamo dato un sistema di 3 equazioni in 3 incognite, come segue:
     ax+by+cz = b1
     dx+ey+fz = b2
     gx+hy+iz = b3
   Scriveremo un programma Cramer[], per risolvere il sistema dato usando il metodo di Cramer.

  Funzionamento di Cramer[]. Dopo aver scritto il comando "Cramer[]" e aver dato l'invio, il computer ci chiederà di scrivere, in una apposita finestra, ogni valore della matrice
    A = ( a   b   c )            d   e   f            g   h   i
dei coefficenti e della matrice B
    B = ( b1 )            b2              b3
dei termini noti del sistema. Fatto ciò, il comando provvederà a fornirci i valori delle tre incognite x,y,z, nella forma:
    X = ( x )            y              z

Confronto tra Cramer[] e Reduce[]. Il comando "Reduce" ci permette di ottenere gli stessi risultati. Lo svantaggio di "Reduce,", tuttavia, è che manca di spiegazioni: lo utilizziamo come se fosse una "scatola nera". Può quindi essere interessante scrivere noi stessi un comando, e capirne il funzionamento grazie al Teorema di Cramer.
Nota. Il comando Cramer[], proprio perchè basato sul Teorema di Cramer, non può essere applicato a matrici con determinante uguale a zero.

Note sui comandi utilizzati.
1.
Il comando a = Input[messaggio]. Questo comando apre una finestra di dialogo, scrive un messaggio di spiegazione, e aspetta che noi inseriamo un v valore nella finestra. Quando noi chiudiamo la finestra, il valore v viene assegnato alla variabile a.
  Un messaggio viene detto "stringa" in Informatica. Si scrive tra virgolette. Un "a capo" si indica con "\n".  
2.
Uso di Variabili Locali. L'uso dell'istruzione Block[ {lista_variabili_locali} comando1; ...; comando_n] rende temporanee le assegnazioni fatte dal programma Cramer[] alle variabili a, b, c, ..., x, y, z. Terminata l'esecuzione del programma, queste variabili riprendono il valore che avevano prima dell'esecuzione. Quest'uso delle variabili e' detto locale al comando, dato che non ha effetto sul valore della variabile al di fuori del comando. Ha il vantaggio di non modificare precedenti assegnazioni ad a, b, c, ..., x, y, z, che possono ancora servirci.
3. La variabile detA. Si noti anche l'uso della variabile "detA", per evitare di calcolare piu' volte il determinante di A. E' buona norma evitare di calcolare piu' volte la stessa espressione, per ridurre i tempi di calcolo. In questo caso, tuttavia, dobbiamo aggiungere che il tempo guadagnato e' del tutto irrilevante.


Created by Mathematica  (August 4, 2004)