FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
inverza de una matriz
hola foro como andan mi pregunta parece un poco complicada y es la siguiente existe alguna funcion para sacar la inverza a una matriz double.
grasias de antemano gulder
__________________
|
#2
|
||||
|
||||
¿Qué entiendes por una matriz double?
// Saludos |
#3
|
||||
|
||||
hola roman esto
TMatrix : array[1..10, 1..10] of double;
aqui esta lo que me pides salu2
__________________
|
#4
|
||||
|
||||
¿Una matriz de 2x10? ¡Sólo las matrices cuadradas tienen inversa!
// Saludos |
#5
|
||||
|
||||
hola roman
si claro solo que cuando te rrespondi no me percate de eso pero digamo que es de n*n grasias salu2
__________________
|
#6
|
||||
|
||||
Pues es cuestión de ir siguiendo las definiciones y traducirlas a código.
Primero que nada debes calcular el determinante de la matriz para asegurarte que es distinto de cero, de lo contrario, la matriz no es invertible. Si te fijas en la definición, el determinante de una matriz de nxn se calcula en términos de determinantes de matrices de (n-1)x(n-1)- los cofactores -, de manera que puedes implementar una función recursiva. Una vez calculado el determinante, formas su matriz adjunta, la transpones y divides sobre el determinante. Claro que esto es aplicar el método sin ningún tipo de optimización. De entrada, para formar la matriz adjunta, necesitas calcular sus cofactores, que son los mismos que usas para calcular el determinante, así que sería recomendable no repetir los pasos. También podrías tratar de examinar la matriz para ver que fila o columna tiene mayor número de entradas cero y desarrollar el determinante sobre tal fila o columna. // Saludos |
#7
|
||||
|
||||
grasias roman
grasias por tu tiempo estoy en lo que me dijiste bien
__________________
|
#8
|
||||
|
||||
Saludos
Cita:
__________________
Van Troi De León (Not) Guía, Code vB:=Delphi-SQL, ¿Cómo? Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto! |
|
|
|