Mathc complexes/a68
Apparence
Le code de la fonction :
/* ------------------------------------ */
/* ------------------------------------ */
double **c_D_c_mZ(
double **D,
double **U
)
{
int r;
int c;
for ( r=R1; r<D[R_SIZE][C0]; r++)
for ( c=C1; c<D[C_SIZE][C0]; c+=C2)
if(((r-R1)*C2)==c-C1)
{
U[r][C1] = D[r][c ];
U[r][C2] = D[r][c+C1];
}
return(U);
}
/* ------------------------------------ */
/* ------------------------------------ */
Copier une matrice diagonale dans une matrice d'une colonne.
Installer et compiler ce fichier dans votre répertoire de travail.
c00d.c |
|---|
/* ------------------------------------ */
/* Save as : c00d.c */
/* ------------------------------------ */
#include "w_a.h"
/* ------------------------------------ */
void fun(int rc)
{
double **D = rdiag_mZ(i_mZ(rc,rc),9);
double **U = i_mZ(rc,C1) ;
clrscrn();
printf(" D :");
p_mZ(D, S5,P0, S3,P0,C6);
printf(" U : c_D_c_mZ(D,U);");
p_mZ(c_D_c_mZ(D,U), S5,P0, S3,P0,C6);
f_mZ(D);
f_mZ(U);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
fun(rp_I(RC4));
while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Exemple de sortie écran :
D :
-1 +8i +0 +0i +0 +0i +0 +0i
+0 +0i +5 -2i +0 +0i +0 +0i
+0 +0i +0 +0i -4 +9i +0 +0i
+0 +0i +0 +0i +0 +0i +7 -4i
U : c_D_c_mZ(D,U);
-1 +8i
+5 -2i
-4 +9i
+7 -4i
Press return to continue
Press X return to stop