Suma de matriz + matriz invertida

Iniciado por sora_ori, 16 Enero 2014, 14:17 PM

0 Miembros y 1 Visitante están viendo este tema.

sora_ori

Hola,

Estoy haciendo un programa que rellene una matriz y que luego la ponga invertida.

Una vez hecho la invertida sumar la matriz con la matriz invertida pero en el resultado muestra esto:




Aquí dejo el Código:

#include <stdio.h>
#include <stdlib.h>
#define FILA 3
#define COLUM 3


int main(){
   int i=0, j=0, num=0;
   int mat[FILA][COLUM];
   int invert[FILA][COLUM];
   int suma[FILA][COLUM];
   
   // MATRIZ NORMAL
   for(i=0; i<FILA; i++){
            for(j=0; j<COLUM; j++){
                     printf("Rellena la matriz %d %d: ",i,j);
                     scanf("%d", &num);
                     mat[i][j] = num;
            }
   }

   // HACER Y MOSTRAR INVERTIDA
   printf("\nMATRIZ INVERTIDA\n\n");
   for(i=0; i<FILA; i++){
            for(j=0; j<COLUM; j++){
                     invert[FILA][COLUM] = mat[FILA - i - 1][COLUM - j - 1];
                     printf("| %d |", invert[FILA][COLUM]);
            }
            printf("\n");
   }

   // HACER SUMA
   for(i=0; i<FILA; i++){
            for(j=0; j<COLUM; j++){
                     suma[FILA][COLUM] = mat[FILA][COLUM] + invert[FILA][COLUM];
            }
   }
   // MOSTRAR SUMA
   printf("\nSUMA DE LAS MATRICES\n\n");
   for(i=0; i<FILA; i++){
            for(j=0; j<COLUM; j++){
                     printf("| %d |",suma[FILA][COLUM]);
            }
            printf("\n");
   }    

   getch();
   return 0;
}



Gracias!

ivancea96

Cita de: sora_ori en 16 Enero 2014, 14:17 PM

   // HACER SUMA
   for(i=0; i<FILA; i++){
            for(j=0; j<COLUM; j++){
                     suma[FILA][COLUM] = mat[FILA][COLUM] + invert[FILA][COLUM];
            }
   }

Eso pusiste. Recuerda que los DEFINE marcan "constantes". Asi que vas a decir que suma[3][3] es igual a mat[3][3] + invert[3][3]. Y así todo el tiempo. Yo creo que querías decir matriz[j].
Revisa.

sora_ori

jajaja gracias!

No sé pero se me fue la cabeza al poner [FILA][COLUM] en lugar de [j]


Saludos  ;D

leosansan

#3
Cita de: sora_ori en 16 Enero 2014, 15:33 PM
jajaja gracias!

No sé pero se me fue la cabeza al poner [FILA][COLUM] en lugar de [j]


Saludos  ;D

Observa que no aparece el corchete con la i y el de la j sale en cursiva.

Si no se usan las etiquetas "code" no salen bien los índices de las matrices:


Código (cpp) [Seleccionar]
[i][j]

El problema radica en que la  expresión [ i], sin el espacio en blanco que pongo para que salgan los corchetes con la i, como decía el problema está en que dichos corchetes con la i se usan como prefijo de la letra en cursiva, de ahí que el corchete con la j salga en cursiva.


¡¡¡¡ Saluditos! ..... !!!!