Mathc matrices/c21l
Installer et compiler ces fichiers dans votre répertoire de travail.
c00b.c |
---|
/* ------------------------------------ */
/* Save as : c00b.c */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */
void fun(int r, int c, int bc)
{
double **A = i_mR(r,c);
double **b = i_mR(r,bc);
double **Ab = r_mR(i_Abr_Ac_bc_mR(r,c,bc),99.);
clrscrn();
printf(" Ab : Ab[R%d][C%d] \n",
rsize_R(Ab),
csize_R(Ab));
p_mR(Ab,S5,P0,C12);
stop();
clrscrn();
printf(" A : c_Ab_A_mR(Ab,A); A[R%d][C%d] \n",
rsize_R(Ab),
csize_A_R(Ab));
p_mR(c_Ab_A_mR(Ab,A),S5,P0,C12);
stop();
clrscrn();
printf(" b : c_Ab_b_mR(Ab,b); b[R%d][C%d] \n",
rsize_R(Ab),
csize_R(Ab)-csize_A_R(Ab));
p_mR(c_Ab_b_mR(Ab,b),S5,P0,C12);
f_mR(Ab);
f_mR(b);
f_mR(A);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(R4)+R1, rp_I(R3)+R2, rp_I(R3)+R1);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Copier A de Ab dans A Copier b de Ab dans b:
//La matrice Ab doit être initialiser avec la fonction :
double **Ab = i_Abr_Ac_bc_mR( RAb, CA, Cb);
//Cette fonction installe la bonne taille pour les matrices Ab, A, b.
Exemple de sortie écran :
--------------------------------------
Ab : Ab[R4][C8]
-89 +79 +91 +87 +29 -22
+75 -74 -41 -24 -58 +67
-40 +41 +58 -36 +43 +6
-96 +46 +86 +38 +28 -76
+50 -90
-24 -55
-81 -15
-68 -62
Press return to continue.
--------------------------------------
A : c_Ab_A_mR(Ab,A); A[R4][C5]
-89 +79 +91 +87 +29
+75 -74 -41 -24 -58
-40 +41 +58 -36 +43
-96 +46 +86 +38 +28
Press return to continue.
--------------------------------------
b : c_Ab_b_mR(Ab,b); b[R4][C3]
-22 +50 -90
+67 -24 -55
+6 -81 -15
-76 -68 -62
Press return to continue
Press X to stop