Programa de matrices.

Infinityz04

Bovino adolescente
#1
Muy buenas noches estoy empezando a programar en C (no C++) en mi escuela y nos dejaron un programa que multiplicara o sumara dos matrices de 5X5 y bueno la onda es que el codigo que hice mi maestro me dijo que estaba bien pero a la hora de correrlo en la computadora me manda resultados raros y no una matriz y no entiendo por que me podrian ayudar se los agradeceria mucho.
Les dejo el codigo y de antemano muchas gracias:

#include<stdio.h>
void main(){
int A[5][5];
int B[5][5];
int C[5][5];
int D[5][5];
int menu,i,j;

printf("Este programa suma y multiplica matrices de dimensiones 5X5\n");
printf("Introduce los valores de la matriz A \n");
for(i=0;i<5;i++)
for(j=0;j<5;j++){
scanf("%d",&A[5][5]);
}
printf("\nIntroduce los valores de la matriz B\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++){
scanf("%d",&B[5][5]);
}
printf("\nSelecciona la operacion a realizar\n1-Sumar A+B\n2-Producto de A*B\n");
scanf("%d",&menu);

if(menu==1){
for(i=0;i<5;i++){
for(j=0;j<5;j++){
C[j]=C[j]+A[j]+B[j];
}
}
printf("La suma de A+B es:\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
printf("%d",C[j]);
}

if(menu==2){
for(i=0;i<5;i++){
for(j=0;j<5;j++){
D[j]=D[j]+A[j]*B[j];
}
}
printf("El producto de A*B es:\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
printf("%d",D[j]);
}
}


Muchas gracias y espero puedan ayudarme.
 

Infinityz04

Bovino adolescente
#2
Muchas gracias a ZOZ, despues de tu observacion note que las variables no se pueden especificar en [5][5] si no que desde alli deben de hacer uso del [j] y bueno ya quedo solucionado esto para quien quiera pues dejo el nuevo programa por si a algun novato le sirve como ejemplo


#include<stdio.h>
#include<conio.h>
void main(){
int A[5][5];
int B[5][5];
int C[5][5];
int D[5][5];
int menu,i,j;

printf("Este programa suma y multiplica matrices de dimensiones 5X5\n");
printf("Introduce los valores de la matriz A \n");
for(i=0;i<5;i++)
for(j=0;j<5;j++){
scanf("%d",&A[j]);
}
printf("\nIntroduce los valores de la matriz B\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++){
scanf("%d",&B[j]);
}
printf("\nSelecciona la operacion a realizar\n1-Sumar A+B\n2-Producto de A*B\n");
scanf("%d",&menu);

clrscr();

if(menu==1){
for(i=0;i<5;i++){
for(j=0;j<5;j++){
C[j]=A[j]+B[j];
}
}
}
printf("La suma de A+B es:\n");
for(i=0;i<5;i++){
for(j=0;j<5;j++)
printf("%d ",C[j]);
printf("\n");
}

if(menu==2){
for(i=0;i<5;i++){
for(j=0;j<5;j++){
D[j]=A[j]*B[j];
}
}
}
printf("El producto de A*B es:\n");
for(i=0;i<5;i++){
for(j=0;j<5;j++)
printf("%d ",D[j]);
printf("\n");
}
}



OJO! que añadi un clrscr para limpiar la pantalla despues de la captura de matrices y asi no amontonar todo, y ya cambie las variables muchas gracias por su ayuda salvaron mi alma n_n
 
Arriba