Il problema
Risolvere un sistema lineare (2 equazioni, 2 variabili)

Utilizzando uno dei metodi disponibili (sostituzione, confronto, …) si arriva alla soluzione
Sono necessari un certo numero di passaggi e le formule finali sono di difficile memorizzazione.
Osserva che la divisione non è possibile se ad-bc=0.
Metodo di Cramer
L’algoritmo di Cramer è semplice da ricordare e da applicare…
Considera la matrice dei coefficienti del sistema

e le matrici con la colonna dei termini noti al posto di quelle di x e y rispettivamente


Adesso calcola i tre determinanti corrispondenti (differenza dei prodotti incrociati…)



Le formule per x e y precedenti possono essere riscritte…
Program sistema_lineare; Var a, b, c, d, e, f, DD, Dx, Dy, { DD perché d è già occupato... } x, y: Real; Begin WriteLn('Inserisci i coefficienti della prima equazione: ax+by=e'); Write('a? '); ReadLn(a); Write('b? '); ReadLn(b); Write('e? '); ReadLn(e); WriteLn('Inserisci i coefficienti della seconda equazione: cx+dy=f'); Write('c? '); ReadLn(c); Write('d? '); ReadLn(d); Write('f? '); ReadLn(f); DD:=a*d-b*c; If(DD = 0) Then WriteLn('Determinante nullo, la regola di Cramer non può essere applicata.') Else Begin Dx:=d*e-b*f; Dy:=a*f-c*e; x:=Dx/DD; y:=Dy/DD; WriteLn('x = ', x:1:2); WriteLn('y = ', y:1:2); End; ReadLn; End.