Ir al contenido principal

Operaciones con matrices II

Como les comenté la semana pasada, seguimos con las operaciones con matrices. Ya vimos lo sencilla que puede ser la suma y la resta pero ¿la multiplicación? puede parecer un poco complicado al principio así que vamos por partes.

A diferencia de la suma y resta en la multiplicación se hace "fila por columna" y se suman los productos. Ya que se hace fila por columna es  necesario que las matrices a multiplicar sigan la siguiente forma:

(n x m)(m x p) = (n x p)

Es decir, el numero de columnas en la primera matriz debe ser igual al numero de filas en la segunda matriz. La matriz resultante será del número de filas de la primera por el número de columnas de la segunda.

Para este caso veremos una matriz de 3x3 así que no tendremos problemas.

Como pueden ver en la imagen primero se multiplica el primer elemento de A con el primer elemento de B, luego se suma a la multiplicación del segundo elemento de A por el segundo de B... etc.

 (Tomando las matrices como A[i][j]; B[i][j])
Basados en lo anterior y pensando más enfocados en programación podemos observar que en A el índice j (eje y) no cambia durante la operación mientras que para B el que permanece igual es el índice i (eje x). Además, notemos que el índice i de la matriz A siempre es el mismo al de la matriz resultado, y el índice j del resultado es el mismo que el de la matriz B. Planteando esto podemos comenzar a programar. La primera parte es igual a como hemos venido haciendo. simplemente agregamos un for para multiplicar los lugares.


¿Recuerdan que les mencioné que la matriz resultado sería de (n x p)? pues tomé eso como referencia en la multiplicación para no perderme y créanme que resulta bastante conveniente. Se pueden modificar las dimensiones de la matriz, como ya también se comentó pero procuren que se cumpla la forma:

(n x m)(m x p) = (n x p)

Comentarios

Entradas populares de este blog

Programación: Estructuras de Control I

Hoy vamos a platicar un poco sobre las estructuras de control. Antes que nada ¿Qué son? Son sentencias que permiten modificar el flujo del programa, algo así como tomar decisiones basados en datos del programa. Para ello deben cumplirse ciertas condiciones definidas por el usuario. Estructura de control IF Pensemos en un programa que evalúe nuestro desempeño escolar. Declaramos nuestras variables y obtenemos el promedio, hasta aquí ya sabemos cómo hacer todo. Ahora bien, queremos que el programa nos muestre un mensaje "Excelente" si el promedio es de 10 a 8.5, "Bueno" si el promedio es de 8.4 a 7.5, "Regular" si el promedio es de 7.4 a 6, si es inferior a 6 que muestre "Malo". Analizando el problema nos damos cuenta rápidamente de dos detalles (esto se va dando con la práctica): 1. Utilizaremos variables de tipo flotante. 2. Utilizaremos 4 condiciones. La forma en que utilizamos la estructura If es la siguiente: if ( condición ) { .....

Método de solución de ecuaciones por suma y resta

Esta vez voy a explicarles el método de suma y resta para la resolución de sistemas de ecuaciones. Me parece un método bastante sencillo y eficiente (claro esto depende del tipo de ecuación), sin más les dejo la explicación, cualquier duda o comentario dejenla en los comentarios y procuraré resolverla:

Programación: Obtener Promedio

Que tal gente, volvemos a los temas de programación. Hoy veremos un tema que teníamos pendiente, aquel programa que obtuviera el promedio de 4 calificaciones y nos dijera nuestro desempeño segun nuestro promedio. Para los que no sepan muy bien de lo que hablamos dejo el link de aquella entrada AQUI . Ahora bien, en esa ocasión hicimos el programa muy básico y quizás poco ortodoxo. El reto era mejorar ese programa con lo visto en los tutoriales que siguieron. Pues bien, ahora incorporamos arreglos, ciclos FOR, y seguimos utilizando los condicionales. Aunque viene cierto que el programa sigue sin tener gran nivel de complejidad sirve de buen ensayo para desarrollar y practicar los conocimientos así que vamos al código: Bueno, ahí está. Ahora hay que notar diferentes cosas: 1) En el segundo ciclo FOR, donde definimos a sum, notamos el operador +=. Lo que estamos haciendo es indicar la instrucción "en la primer vuelta del ciclo sum es igual a materia[j], en la segunda vuelta el...