Installer et compiler ce fichier dans votre répertoire de travail.

ca_a.c
'
/* ------------------------------------ */
/*  Save as :   ca_a.c                 */
/* ------------------------------------ */
#include      "w_a.h"
/* ------------------------------------ */
int main(void)
{
double a[R2*(C3*C2)] ={ 1, 2,  3, 4,  5, 6,
                       10,20, 30,40, 50,60};
                     
double **A = ca_A_mZ(a,i_mZ(R2,C3));
double **B =           i_mZ(R2,C3);
double **C =           i_mZ(R2,C3);

  printf(" A : ");
  p_mZ(A,S4,P0,S3,P0,C6);

  ca_A_mZ(a,B);  
  printf(" B : ");
  p_mZ(B,S4,P0,S3,P0,C6);  
  
  printf(" C : ");
  p_mZ(C,S4,P0,S3,P0,C6);
  
  printf(" C : ");
  p_mZ(ca_A_mZ(a,C),S4,P0,S3,P0,C6);

  printf(" C : ");
  p_mZ(C,S4,P0,S3,P0,C6);
  
  f_mZ(A);
  f_mZ(B);
  f_mZ(C);
  
  stop();

  return 0;
}


La fonction ca_A_mR(); permet de copier un tableau dans une matrice.

La matrice A est créé et initialisé sur la même ligne.

Si une matrice n'est pas initialisé par le programme, elle est initialisée à la matrice zéro par la librairie.


Exemple de sortie écran :

 A : 
  +1 +2i   +3 +4i   +5 +6i 
 +10+20i  +30+40i  +50+60i 

 B : 
  +1 +2i   +3 +4i   +5 +6i 
 +10+20i  +30+40i  +50+60i 

 C : 
  +0 +0i   +0 +0i   +0 +0i 
  +0 +0i   +0 +0i   +0 +0i 

 C : 
  +1 +2i   +3 +4i   +5 +6i 
 +10+20i  +30+40i  +50+60i 

 C : 
  +1 +2i   +3 +4i   +5 +6i 
 +10+20i  +30+40i  +50+60i 

 Press return to continue.
Cet article est issu de Wikibooks. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.