Aller au contenu

Mathc complexes/a57

Un livre de Wikilivres.


Application

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

c00d.c
/* ------------------------------------ */
/*  Save as :   c00d.c                  */
/* ------------------------------------ */
#include "w_a.h"
/* ------------------------------------ */
/* ------------------------------------ */
double **xerase_i_mZ(
double **Zer
)
{
int r;
int c;

  for  (r=R1; r<Zer[R_SIZE][C0];   r++)
    for(c=R1; c<Zer[C_SIZE][C0]; c+=C2)
           
           Zer[r][c+C1] = 0.;
                
return(Zer);
}
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int rc)
{
double **A   = r_mZ(i_mZ(rc,rc), 999);

  clrscrn();

  printf(" A :");
  p_mZ(A, S10,P0, S3,P0, C8);
  
  printf(" A : erase_i_mZ(A) ");;
  p_mZ(erase_i_mZ(A), S10,P0, S3,P0, C8);
   
  f_mZ(A);
}
/* ------------------------------------ */
int main(void)
{
time_t t;

  srand(time(&t));
  
  do
        fun(rp_I(RC3)+R2);

  while(stop_w());       

  return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Cette fonction efface toutes les parties imaginaires. Elle peut être utile quand toutes les valeurs imaginaires doivent être nulles, mais que lors du calcul elles sont proche de zéro sans être nulle (4E-12 = 0.0000000000004)
Exemple de sortie écran :
 A :
      +550-725i       -708-815i       -176+536i       -994+942i 
      +560+650i       -874+964i       -473+793i       +840+882i 
       -72-383i       -881-545i       -824+90i       +887-724i 
      -845+561i       +273+329i       +199+810i       -951-147i 

 A : erase_i_mZ(A) 
      +550 +0i       -708 +0i       -176 +0i       -994 +0i 
      +560 +0i       -874 +0i       -473 +0i       +840 +0i 
       -72 +0i       -881 +0i       -824 +0i       +887 +0i 
      -845 +0i       +273 +0i       +199 +0i       -951 +0i 


 Press   return to continue
 Press X return to stop