Mathc matrices/a246
Installer et compiler ces fichiers dans votre répertoire de travail.
c00a.c |
---|
/* ------------------------------------ */
/* Save as : c00a.c */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */
void fun(void)
{
double **U_T = r_mR(i_mR(R1, C3), 9);
double **V_T = r_mR(i_mR(R1, C3), 9);
double **W_T = r_mR(i_mR(R1, C3), 9);
double **VxU_T = i_mR(R1, C3);
double **WxU_T = i_mR(R1, C3);
double **VxU_T_pls_WxU_T = i_mR(R1, C3);
double **V_plus_W_T = add_mR(V_T,W_T,i_mR(R1, C3));
double **VplusW_xU_T = i_mR(R1, C3);
double **A = rp_mR(i_mR(R3, C3), 1);
// (v x u)
c_r_mR(V_T, R1, A, R2);
c_r_mR(U_T, R1, A, R3);
c_s_mR(cofactor_R(A, R1, C1), VxU_T, R1, C1);
c_s_mR(cofactor_R(A, R1, C2), VxU_T, R1, C2);
c_s_mR(cofactor_R(A, R1, C3), VxU_T, R1, C3);
// (w x u)
c_r_mR(W_T, R1, A, R2);
c_r_mR(U_T, R1, A, R3);
c_s_mR(cofactor_R(A, R1, C1), WxU_T, R1, C1);
c_s_mR(cofactor_R(A, R1, C2), WxU_T, R1, C2);
c_s_mR(cofactor_R(A, R1, C3), WxU_T, R1, C3);
// (vxu) + (wxu)
add_mR(VxU_T,WxU_T,VxU_T_pls_WxU_T);
// (v+w) x u
c_r_mR(V_plus_W_T, R1, A, R2);
c_r_mR(U_T , R1, A, R3);
c_s_mR(cofactor_R(A, R1, C1), VplusW_xU_T, R1, C1);
c_s_mR(cofactor_R(A, R1, C2), VplusW_xU_T, R1, C2);
c_s_mR(cofactor_R(A, R1, C3), VplusW_xU_T, R1, C3);
clrscrn();
printf(" u_T :");
p_mR(U_T, S4, P0, C6);
printf(" v_T :");
p_mR(V_T, S4, P0, C6);
printf(" w_T :");
p_mR(W_T, S4, P0, C6);
printf("\n\n"
" (v+w) x u == (vxu) + (wxu) \n\n"
" (v+w) x u :");
p_mR(VplusW_xU_T, S5, P0, C6);
printf(" (vxu) + (wxu) :");
p_mR(VxU_T_pls_WxU_T, S5, P0, C6);
f_mR(U_T);
f_mR(V_T);
f_mR(W_T);
f_mR(VxU_T);
f_mR(WxU_T);
f_mR(VxU_T_pls_WxU_T);
f_mR(V_plus_W_T);
f_mR(VplusW_xU_T);
f_mR(A);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun();
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Les vecteurs en mathématiques sont supposés être des vecteurs colonnes, c'est pour cela que j'utilise _T pour afficher des vecteurs lignes. Exemple de sortie écran :
--------------------
u_T :
+1 -6 +8
v_T :
+5 +5 -7
w_T :
+3 +8 +6
(v+w) x u == (vxu) + (wxu)
(v+w) x u :
+98 -65 -61
(vxu) + (wxu) :
+98 -65 -61
Press return to continue
Press X return to stop