gagiD

klmnj

Oct 1st, 2013
240
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 2.31 KB | None | 0 0
  1. type DDN = array [1..3,1..3] of integer;
  2. type JDN = array [1..3] of integer;
  3. type JDNR = array [1..3] of real;
  4.  
  5. var b : JDN;
  6. var x : JDNR;
  7. var A , A_1 , A_2 , A_3 : DDN;
  8. var  D,D_1,D_2,D_3 : integer;
  9. var c : integer;
  10.  
  11.   procedure UcitajMat( var X: DDN );
  12.    var i,j: integer;
  13.    begin
  14.      for i := 1 to 3 do
  15.          begin
  16.            for j := 1 to 3 do
  17.                begin
  18.                  writeln('A[',i,',',j,']=');
  19.                  read(X[i,j]);
  20.                end;
  21.          end;
  22.    end;
  23.  
  24. procedure UcitajNiz( var v: JDN );
  25. var i: integer;
  26. begin
  27.   for i:= 1 to 3 do
  28.       begin
  29.          writeln('b[',i,']=');
  30.          read(v[i]);
  31.       end;
  32. end;
  33.  
  34. function detA( x : DDN ) : integer;
  35. var rez: integer;
  36. begin
  37.    rez := ((x[1,1]*x[2,2]*x[3,3])+(x[1,2]*x[2,3]*x[3,1])+(x[1,3]*x[2,1]*x[3,2])-(x[3,1]*x[2,2]*x[1,3])-(x[3,2]*x[2,3]*x[1,1])-(x[3,3]*x[2,1]*x[1,2]));
  38.    detA := rez;
  39. end;
  40.  
  41. procedure MenjajKolone( kolona : integer ; v : JDN ; var x: DDN );
  42. var i: integer;
  43. begin
  44.     for i := 1 to 3 do
  45.       begin
  46.          x[i,kolona] := v[i];
  47.       end;
  48. end;
  49.  
  50. procedure KopMat( x : DDN ; var Xi : DDN );
  51. var i,j : integer;
  52. begin
  53.     for i := 1 to 3 do
  54.          begin
  55.            for j := 1 to 3 do
  56.                begin
  57.                  Xi[i,j] := x[i,j];
  58.                end;
  59.          end;
  60. end;
  61. Begin
  62.     writeln('Unesite matricu koeficijenata:');
  63.     UcitajMat(A);
  64.  
  65.     KopMat(A,A_1);
  66.     KopMat(A,A_2);
  67.     KopMat(A,A_3);
  68.  
  69.     writeln('Unesite vektor b:');
  70.     UcitajNiz(b);
  71.  
  72.     MenjajKolone( 1 , b , A_1 );
  73.     MenjajKolone( 2 , b , A_2 );
  74.     MenjajKolone( 3 , b , A_3 );
  75.  
  76.  
  77.     D := detA(A);
  78.     D_1 := detA(A_1);
  79.     D_2 := detA(A_2);
  80.     D_3 := detA(A_3);
  81.  
  82.  
  83.     if ( ( D = 0 ) AND ( D_1 = 0 ) AND ( D_2 = 0 ) AND ( D_3 = 0 ) ) then
  84.     begin
  85.         writeln('Sistem ima beskonacno mnogo resenja!');
  86.         readln(c);
  87.     end;
  88.  
  89.  
  90.     if ( (( D = 0 ) AND ( D_1 <> 0 )) OR (( D = 0 ) AND ( D_2 <> 0 )) OR (( D = 0 ) AND ( D_3 <> 0 )) ) then
  91.     begin
  92.         writeln('Sistem nema resenja!');
  93.         readln(c);
  94.     end;
  95.  
  96.  
  97.     x[1] := D_1 / D;
  98.     x[2] := D_2 / D;
  99.     x[3] := D_3 / D;
  100.  
  101.     writeln('Resenja sistema su:');
  102.  
  103.     for c := 1 to 3 do
  104.         begin
  105.           writeln('x[',c,']=',x[c]);
  106.         end;
  107.  
  108.      readln(c);
  109. End.
Advertisement
Add Comment
Please, Sign In to add comment