Mathc complexes/09j
Apparence
Le code de la fonction :
/* ------------------------------------ */
/* ------------------------------------ */
double **ca_A_mRZ(
double a[],
double **A
)
{
int r;
int c;
int i=0;
for (r=R1; r<A[R_SIZE][C0]; r++)
for (c=C1; c<A[C_SIZE][C0]; c++,c++)
{
A[r][c] = a[i++];
A[r][c+C1] = 0.;
}
return(A);
}
/* ------------------------------------ */
/* ------------------------------------ */
La fonction ca_A_mRZ(); permet de copier un tableau de réelles dans une matrice avec des valeurs complexes. La valeur imaginaire est mis à zéro, pour éventuellement effacer des valeurs précédentes.
Installer et compiler ce fichier dans votre répertoire de travail.
c00b.c |
|---|
/* ------------------------------------ */
/* Save as : c00b.c */
/* ------------------------------------ */
#include "w_a.h"
/* ------------------------------------ */
int main(void)
{
double a[R2*C3] ={ 1, 2, 3,
10, 20, 30 };
double **A = ca_A_mRZ(a,i_mZ(R2,C3));
printf(" ca_A_mRZ();\n\n"
" Copying an array of real numbers into"
" a complex-valued matrix.\n\n"
" A: p_mRZ(); ");
p_mRZ(A,S4,P0, C6);
printf(" A: p_mZ();");
p_mZ(A,S4,P0,S3,P0,C6);
stop();
f_mZ(A);
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Exemple de sortie écran :
ca_A_mRZ();
Copying an array of real numbers into a complex-valued matrix.
A: p_mRZ();
+1 +2 +3
+10 +20 +30
A: p_mZ();
+1 +0i +2 +0i +3 +0i
+10 +0i +20 +0i +30 +0i
Press return to continue.