{Praktikums-Aufgabe III : N.9 von RenÉ Scholz} program prak3 (input,output); const N = 3; var i,j,k,l :integer; s,c,d :real; a,a1,g,h :array [1..N,1..N] of real; {-----------------------------------------------------------------------} begin { Main } writeln;writeln;writeln; for i:=1 to N do begin writeln(' ',i,'. Zeile eingeben !'); for j:=1 to N do readln(a[i,j]); end; writeln;writeln;writeln;writeln;writeln; writeln(' *** Gegebene Matrix *** : ');writeln; for i:=1 to N do begin for j:= 1 to N do begin write(a[i,j]:8:4 ,' '); a1[i,j]:=a[i,j]; end; writeln; end; for i:= 1 to N do begin s:=0; for j:=1 to N do s:=s+a[j,j]; c:=s/i; for j:=1 to N do for k:=1 to N do if j=k then h[j,j]:=a[j,j]-c else h[j,k]:=a[j,k]; if i=N-1 then for j:=1 to N do for k:=1 to N do g[j,k]:=h[j,k]; for j:=1 to N do for k:=1 to N do begin s:=0; for l:=1 to N do s:=s+a1[j,l]*h[l,k]; a[j,k]:=s; end; end; if (c<>0) then begin writeln;writeln;writeln; writeln(' *** Inverse Matrix *** : ');writeln; for i:=1 to N do begin for j:=1 to N do begin g[i,j]:=g[i,j]/c; write(g[i,j]:8:4 ,' '); end; writeln; end; writeln;writeln; if not(odd(n)) then c:=-c; writeln(' --> Determinante = ',c:8:4); writeln;writeln;writeln; end else begin writeln;writeln;writeln; writeln('### Matrix singulaer , die Inverse existiert nicht ! ###'); end; writeln;writeln; end. { End of main }