Notación matemática formada por una tabla cuadrada de números, u otros elementos, entre dos líneas verticales; el valor de la expresión se calcula mediante su desarrollo siguiendo ciertas reglas. Los determinantes fueron originalmente investigados por el matemático japonés Seki Kowa alrededor de 1683 y, por separado, por el filósofo y matemático alemán Gottfried Wilhhelm Leibniz alrededor de 1693. Esta notación se utiliza en casi todas las ramas de las matemáticas y en las ciencias naturales. [Enciclopedia Microsoft Encarta 2001]
<!DOCTYPE html> <html> <head> <title>Determinante de una matriz NxN en javascript</title> <meta charset="UTF-8"> </head> <body> <script> /** * crea una matriz cuadrada * @param {integer} size dimension de la matriz * */ function createMatriz(size){ var matriz = new Array(size); for (i = 0; i < size ; i++){ matriz[i]=new Array(size); } return matriz; } /** * calcula el determinante de una matriz NxN * @param {array} matriz matriz a calcular * */ function determinante(matriz){ if(matriz.length==2){ var det=(matriz[0][0]*matriz[1][1])-(matriz[1][0]*matriz[0][1]); return det; } var suma = 0; for(var i = 0; i<matriz.length; i++){ var nm = createMatriz(matriz.length-1); for(var j=0; j<matriz.length; j++){ if(j!=i){ for(var k=1; k<matriz.length; k++){ var indice=-1; if(j<i) indice=j; else if(j>i) indice=j-1; nm[indice][k-1] = matriz[j][k]; } } } if(i%2==0){ suma += matriz[i][0] * determinante(nm); } else{ suma -= matriz[i][0] * determinante(nm); } } return suma; } function printMatriz(matriz){ for(var i=0; i<matriz.length; i++){ document.write("[ "); for(var j=0; j<matriz.length; j++){ document.write(matriz[i][j].toPrecision(precision) + " "); } document.write(" ]<br/>"); } } /* ---------------------------------- */ var precision = 5; /* var m = createMatriz(3); m[0][0]=1;m[0][1]=0.3;m[0][2]=0.5; m[1][0]=0;m[1][1]=1;m[1][2]=0.5; m[2][0]=-0.1;m[2][1]=0.7;m[2][2]=1; */ //definimos matriz y datos var m = createMatriz(4); m[0][0]=0.3;m[0][1]=2.3;m[0][2]=3.3;m[0][3]=2; m[1][0]=4;m[1][1]=5.4;m[1][2]=6;m[1][3]=3; m[2][0]=9;m[2][1]=8;m[2][2]=2;m[2][3]=0.01; m[3][0]=1;m[3][1]=0.1;m[3][2]=0.2;m[3][3]=3; //calculamos y mostramos en pantalla document.write("Matriz <br/>"); printMatriz(m); var d = determinante(m); document.write("determinante = " + d.toPrecision(precision) + "<br/>"); </script> </body> </html>
Ejecutando el ejemplo tenemos:
Una procedimiento almacenado es un conjunto de sentencias de SQL que se pueden almacenar en el servidor, de esta forma n[...]
En este post conocernos lo que son las Estructuras de Control IF en los script de Bash. Estas estructuras nos ayudan a c[...]
ASCII acrónimo inglés de American Standard Code for Information Interchange (Código Estándar Estadounidense para el Inte[...]
En este tutorial utilizaremos la librería PHPMailer para enviar correo electrónico utilizando el servidor de GMail de Go[...]
Tiempo atras me pidieron un ejemplo de como realizar un reporte con iReport tipo factura, recibo o como le llamen, compl[...]
En esta penúltima parte, declaramos las funciones que nos permitirán pintar los shapes en el canvas, vamos al grano que[...]