Linear Algebra and the C Language/a03f
Install and compile this file in your working directory.
/* ------------------------------------ */
/* Save as : c00c.c */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */
int main(void)
{
double a[R2*C3]={ 1,2,3,
4,5,6};
double b[R3*C2]={ 6,5,
3,2,
4,5};
double **A = ca_A_mR(a,i_mR(R2,C3));
double **B = ca_A_mR(b,i_mR(R3,C2));
double **AB = i_mR(R2,C2);
clrscrn();
printf(" A : ");
p_mR(A,S4,P0,C6);
printf(" B : ");
p_mR(B,S4,P0,C6);
printf(" AB : ");
p_mR(mul_mR(A,B,AB),S8,P0,C6);
stop();
clrscrn();
printf(" Copy/Paste into the octave window.\n\n");
p_Octave_mR(A,"A", P0);
p_Octave_mR(B,"B", P0);
printf("A * B\n");
p_mR(AB,S4,P0,C6);
stop();
f_mR(A);
f_mR(B);
f_mR(AB);
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
Screen output example:
A :
+1 +2 +3
+4 +5 +6
B :
+6 +5
+3 +2
+4 +5
AB :
+24 +24
+63 +60
Press return to continue.
Copy/Paste into the octave window.
A=[
+1,+2,+3;
+4,+5,+6]
B=[
+6,+5;
+3,+2;
+4,+5]
A * B
+24 +24
+63 +60
Press return to continue.