Aller au contenu

Mathc complexes/09l

Un livre de Wikilivres.


Application

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

c00a.c
/* ------------------------------------ */
/*  Save as : c00a.c                    */
/* ------------------------------------ */
#include "w_a.h"
/* ------------------------------------ */
void p1_mZ(
double **A
)
{
int r;
int c;

 	for     (r = R1; r < A[R_SIZE][C0]; r++)
 	   {
 	    for (c = C1; c < A[C_SIZE][C0]; c++,c++)

            printf("%+f %+fi ",A[r][c],A[r][c+C1]);
            
         printf("\n");
        }
}

/* ------------------------------------ */
void fun(int r,int c)
{
double **A = r_mZ(i_mZ(r,c),9);

  clrscrn();

  printf(" A: p_mZ(A, S4,P0, S2,P0,C8);");
  p_mZ(A, S4,P0, S2,P0,C8);

  printf(" A: p1_mZ(A); \n");
  p1_mZ(A);

  f_mZ(A);
}
/* ------------------------------------ */
int main(void)
{
time_t t;

  srand(time(&t));
  
   do 
        fun(rp_I(R3)+R2, rp_I(C2)+C1);
        
    while(stop_w());
        
  return 0;
}

/* ------------------------------------ */
/* ------------------------------------ */
On affiche une matrice sans aucun formatage en utilisant deux boucles "for". Pour matérialiser la partie imaginaire, on utilise un i (%+fi).
 
 *  A[R_SIZE][C0] : Dans cette adresse est mémorisée le nombre de lignes.
 *  A[C_SIZE][C0] : Dans cette adresse est mémorisée le nombre de colonnes.

Exemple de sortie écran :

 A: p_mZ(A, S4,P0, S2,P0,C8);
  -2+5i   -6+8i 
  -9-1i   +2+2i 
  +9-7i   -3+1i 
  -8-5i   +1+2i 
  +6-1i   -1+5i 

 A: p1_mZ(A); 
-2.000000 +5.000000i -6.000000 +8.000000i 
-9.000000 -1.000000i +2.000000 +2.000000i 
+9.000000 -7.000000i -3.000000 +1.000000i 
-8.000000 -5.000000i +1.000000 +2.000000i 
+6.000000 -1.000000i -1.000000 +5.000000i 

 Press   return to continue
 Press X return to stop