Mathc complexes/Fichiers h : vfpm

Un livre de Wikilivres.
Sauter à la navigation Sauter à la recherche


Installer ce fichier dans votre répertoire de travail.

Crystal Clear mimetype source h.png wpfm.h
'
/* ------------------------------------ */
/*  Save as :   wpfm.h                   */
/* ------------------------------------ */
double **fp_mZ(
double **A,
char MatrixName[],
int er,
int dr,
int ei,
int di,
int n
)
{
FILE * fp = fopen("aamatrix.txt","a");

int r;
int c;
int n_c;
int n_c_LAST;
int n_c_FIRST;

fprintf(fp,"%s",MatrixName);

n_c = R1;

while(n_c<A[C_SIZE][C0])
     {
      n_c+=n*C2;
                          n_c_FIRST = n_c-n*C2;
      if(n_c<A[C_SIZE][C0])n_c_LAST  = n_c;
      else                n_c_LAST  = A[C_SIZE][C0];

 	  for(r=R1; r<A[R_SIZE][C0]; r++)
         {
          fprintf(fp,"\n");
 	      for (c=n_c_FIRST; c<n_c_LAST; c+=C2)
               fprintf(fp,"%+*.*f%+*.*fi ",er,dr,A[r][c],ei,di,A[r][c+C1]);
          }
      fprintf(fp,"\n");
     }
fprintf(fp,"\n");

fclose(fp);

return(A);
}
/* ------------------------------------ */
double **fpE_mZ(
double **A,
char MatrixName[],
int er,
int dr,
int ei,
int di,
int n
)
{
FILE * fp = fopen("aamatrix.txt","a");

int r;
int c;
int n_c;
int n_c_LAST;
int n_c_FIRST;

fprintf(fp,"%s",MatrixName);

n_c = R1;

while(n_c<A[C_SIZE][C0])
     {
      n_c+=n*C2;
                          n_c_FIRST = n_c-n*C2;
      if(n_c<A[C_SIZE][C0])n_c_LAST  = n_c;
      else                n_c_LAST  = A[C_SIZE][C0];

 	  for(r=R1; r<A[R_SIZE][C0]; r++)
         {
          fprintf(fp,"\n");
 	      for (c=n_c_FIRST; c<n_c_LAST; c+=C2)
               fprintf(fp,"%+*.*e%+*.*ei ",er,dr,A[r][c],ei,di,A[r][c+C1]);
          }
      fprintf(fp,"\n");
     }
fprintf(fp,"\n");

fclose(fp);

return(A);
}


Ces fonctions permettent d'imprimer une matrice dans un fichier.

On peut contrôler la taille des colonnes, le nombre de chiffres après la virgule, le nombre de colonnes par ligne.