Aller au contenu

Mathc matrices/a151

Un livre de Wikilivres.


Adjoint


Installer et compiler ces fichiers dans votre répertoire de travail.


c00b.c
/* ------------------------------------ */
/*  Save as :   c00b.c                  */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */
void fun(int r)
{
double **A         =       r_mR(             i_mR(r,r),9.);
double **Aadjoint  = adjoint_mR(A,           i_mR(r,r)   );
double **AAadjoint =     mul_mR(A, Aadjoint, i_mR(r,r)   );

  clrscrn();
  printf(" A :");
  p_mR(A,S3,P0,C6);
  
  printf(" adjoint(A) :");
  p_mR(Aadjoint,S6,P0,C6);
  
  printf(" A * adjoint(A) = det(A) * ID\t\t\tdet(A) = %+.0f", det_R(A));
  p_mR(AAadjoint,S6,P0,C6);

  f_mR(A);
  f_mR(Aadjoint);
  f_mR(AAadjoint);
}
/* ------------------------------------ */
int main(void)
{
time_t t;

  srand(time(&t));
do
{
  fun(rp_I(RC4)+C1);

} while(stop_w());

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


A * adjoint(A) = det(A) * ID


Exemple de sortie écran :
 A :
 +6  -7  +5  +5  +2 
 +8  +4  -4  -6  +2 
 -8  +9  -4  +3  +1 
 +5  -9  +8  +4  +9 
 +3  -9  +9  -6  -5 

 adjoint(A) :
 +5054  +3215  +1704  -1588   +790 
 +5308  +4419  +9298   -968  +4008 
 +4916  +2996  +9472   +686  +6294 
 +5554   -797  +1858  -1818   -998 
 -4338   +324   -894  +4206  -1582 

 A * adjoint(A) = det(A) * ID			det(A) = +36842
+36842     -0     -0     -0     -0 
    +0 +36842     +0     +0     +0 
    +0     -0 +36842     +0     +0 
    +0     +0     -0 +36842     -0 
    +0     +0     -0     +0 +36842 


 Press   return to continue
 Press X return to stop