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:
(http://i44.tinypic.com/b8mrep.png)
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!
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.
jajaja gracias!
No sé pero se me fue la cabeza al poner [FILA][COLUM] en lugar de [j]
Saludos ;D
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:
[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! ..... !!!!
(http://st.forocoches.com/foro/images/smilies/aaaaa.gif)