Ciao,avete mai provato a fare una matrice inversa in pascal?per chi non ne ha mai sentito parlare ecco un link dove spiega cos'è:http://math.ec.unipi.it/algebra/matric/invmat1.htm
io per fare la matrice inversa ho iniziato caricando la matrice,calcolare il determinante,calcolare la matrice trasposta ed ora dovrei calcolare la matrice aggiunta ma qui ho trovato qualche problema...qualcuno di voi mi puo aiutare?
vi scrivo il codice che ho fatto fino ad ora:
program matr_inve;
const dim:=5;
type matrice=array[1..dim,1..dim] of integer;
var nx,det:integer;m,m1:matrice;scelta:boolean;
Procedure carica(var nx:integer;var m:matrice);
var i,J:integer;
begin
REPEAT
writeln('inserisci le dimensioni della matrice'),
readln(nx),
UNTIL (nx>1) and (nx<4);
for I:=1 to nx do
for J:=1 to nx do
begin
writeln('inserisci l''èlemento in posizione ',I,'-',J);
readln(m[I,J]);
end;
end;
Procedure determinante(nx:integer;m:matrice);
var I.J,det:integer;
begin
if (dim=2) then
det:=m[1,1]*m[2,2]-(m[2,1]*m[1,2])
else begin
det:=m[1,1]*m[2,2]*m[3,3]+m[1,2]*m[2,3]*m[3,4]+m[1,3]*m[2,4]*m[3,5];
det:=det-(m[3,1]*m[2,2]*m[1,3]+m[3,2]*m[2,3]*m[1,4]+m[3,3]*m[2,4]*m[1,5];
end;
end;
Procedure trasposta(m:matrice;var m1:matrice;dim:integer);
var I,J:integer;
begin
for I:=1 to nx do
for J:=1 to nx do
m1[I,J]:=m[J,I];
end;
(ora dovrei fare la procedura della matrice aggiunta,qualcuno mi puo aiutare?)grazie anticipatamente per l'aiuta
ciao....