Mathc complexes/Fichiers c : mul r r

Application

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

mul.c
/* ------------------------------------ */
/*  Save as :   mul.c                   */
/* ------------------------------------ */
#include "w_a.h"
/* ------------------------------------ */
void fun(int r,int rc,int c)
{
double **A  =   r_mZ(     i_mZ(r,rc),9);
double **B  =   r_mZ(     i_mZ(rc,c),9);
double **AB = mul_mZ(A,B, i_mZ(r,c));

  clrscrn();

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

  printf(" B : ");
  p_mZ(B, S5,P0, S4,P0,C6);

  printf(" AB : ");
  p_mZ(AB, S5,P0, S4,P0,C6);
  
  f_mZ(A);
  f_mZ(B);
  f_mZ(AB);
}
/* ------------------------------------ */
int main(void)
{
time_t t;

  srand(time(&t));
  
   do 
         fun(rp_I(R4),rp_I(RC4),rp_I(C4));
        
    while(stop_w());
        
  return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */


J'ai utilisé RC4 et rc pour le nombre de colonnes de A et le nombre de lignes de B car ces deux valeurs doivent être identiques.

Elles correspondent pour A au nombre de colonnes (c) et pour B au nombre de lignes


Exemple de sortie écran :

 A : 
   +8  +8i    -7  -5i    -5  +4i 
   -7  -7i    -3  +4i    -1  +6i 
   +2  -7i    +2  -5i    -5  +2i 

 B : 
   -5  +6i    -7  +4i    -5  +4i    -7  +2i 
   -1  +4i    -9  -1i    -5  -7i    +6  -9i 
   -9  -1i    +4  +6i    +8  +6i    -7  +8i 

 AB : 
  -12 -46i   -74 +14i  -136 +68i  -156 -75i 
  +79 -76i   +68  +6i   +62 +50i   +40 +36i 
  +97 +47i   -41 +78i   -79 +40i   -14 -49i 


 Press return to continue
 Press X      to stop