Skip to main content

  | मौसम…

411 समाचार
Public archive edition · Attributed source reporting with original dates · AI drafts are excluded

411 REFERENCE · Wikibooks

Linear Algebra and the C Language/a0l5

Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.

__NOTOC__ Install and compile this file in your working directory. /* ------------------------------------ */ /* Save as: c00a.c */ /* ------------------------------------ */ #include "v_a.h" /* ------------------------------------ */ /* ------------------------------------ */ #define ARRAY A3 /* ------------------------------------ */ #define RC RC3 /* ------------------------------------ */ /* ------------------------------------ */ void fun(void) { double **Q = r_Q_mR( i_mR(RC,RC), 9); double **u[ARRAY]; int i,j; for(i=A0; i<ARRAY; i++) { u[i] = i_mR(RC,C1); c_c_mR(Q,(i+C1),u[i],C1); } clrscrn(); printf(" Orthonormal basis:\n\n"); for(i=A0; i<ARRAY; i++) { printf(" u[%d]:",i); p_mR(u[i], S5,P4,C6); } stop(); clrscrn(); for(i=A0; i<ARRAY; i++) printf(" ||u[%d]|| = %.4f:\n",i,norm_R(u[i])); printf(" \n\n\n" " <u,v> = v^t u\n\n"); for(i=A0; i<ARRAY; i++) for(j=A0; j<ARRAY; j++) if(i!=j) printf(" <u[%d],u[%d]> = %+.4f\n",i,j, dot_R(u[i],u[j])); for(i=A0; i<ARRAY; i++) f_mR(u[i]); f_mR(Q); } int main(void) { time_t t; srand(time(&t)); do { fun(); } while(stop_w()); return 0; } /* ------------------------------------ */ /* ------------------------------------ */ Screen output example: Orthonormal basis: u[0]: +0.1980 +0.6931 +0.6931 u[1]: -0.8995 +0.4094 -0.1524 u[2]: -0.3894 -0.5933 +0.7045 Press return to continue. ||u[0]|| = 1.0000: ||u[1]|| = 1.0000: ||u[2]|| = 1.0000: <u,v> = v^t u <u[0],u[1]> = -0.0000 <u[0],u[2]> = +0.0000 <u[1],u[0]> = -0.0000 <u[1],u[2]> = +0.0000 <u[2],u[0]> = +0.0000 <u[2],u[1]> = +0.0000 Press return to continue Press X return to stop