Linear Algebra and the C Language/a0k5


Install and compile this file in your working directory.

/* ------------------------------------ */
/*  Save as :   c00a.c                  */
/* ------------------------------------ */
#include      "v_a.h"
/* ------------------------------------ */
int main(void)
{
time_t t;

  srand(time(&t));
  
double ta[R2*C3]={ 1,0, 1,
                   0,1, 2};
                   
double **T  =  ca_A_mR(ta,                i_mR(R2,C3));
double **A  =     r_mR(                   i_mR(R2,C2),999.);  
double **AT =   mul_mR(A,T,               i_mR(R2,C3));  
double **Ab = gj_TP_mR(c_mR(AT, i_Abr_Ac_bc_mR(R2,C2,C1)));     

  clrscrn();
  printf(" Find a matrice, that has this reduced row-echelon form :\n\n"
         " Ab:");
  p_mR(T, S5,P0,C6);

  printf(" With, A = r_mR(i_mR(R2,C2),999.)");
  p_mR(A, S5,P0,C6);  
  
  printf(" And, T:");
  p_mR(T, S5,P0,C6); 

  printf(" I suggest this matrix: AT = Ab\n"  
  " Ab:");
  p_mR(AT, S5,P0,C6);
 
  printf(" gj_TP_mR(Ab); ");
  p_mR(Ab, S10,P5,C7);
  stop();

  f_mR(Ab);
  f_mR(A);
  f_mR(T);
  f_mR(AT);

  return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */

Screen output example:

                                                                                       
 Find a matrice, that has this reduced row-echelon form :

 Ab:
   +1    +0    +1 
   +0    +1    +2 

 With, A = r_mR(i_mR(R2,C2),999.)
 -222  -349 
 +938  +133 

 And, T:
   +1    +0    +1 
   +0    +1    +2 

 I suggest this matrix: AT = Ab
 Ab:
 -222  -349  -920 
 +938  +133 +1204 

 gj_TP_mR(Ab); 
  +1.00000   +0.00000   +1.00000 
  -0.00000   +1.00000   +2.00000 

 Press return to continue.