Hola chicos, si alguien me puede ayudar en esto,
tengo el codigo que multiplica 2 matrices de 3 x 3 bueno eso esta todo hecho,
pero ademas al terminar el codigo, quiero agregar algo que diga
Desea multiplicar otro numero?, si es "s" que vuelva a realizar el codigo y si es "n" que salga del programa
les dejo el codigo :
#include <stdio.h>
#include <stdlib.h>
int main()
{
int numa[3][3];
int numb[3][3];
int multi[3][3];
int a,b;
for(a=0;a<3;a++){
for(b=0;b<3;b++){
printf("Ingrese un valor para la primera matriz, fila %d columna %d: ",a+1,b+1);
scanf("%d",&numa[a][b]);
}
}
printf("\n");
printf("\n");
printf("Primera Matriz ingresada\n");
printf("\n");
for(a=0;a<3;a++){
for(b=0;b<3;b++){
printf("\t%d",numa[a][b]);
} printf("\n");
} printf("\n");
printf("\n");
for(a=0;a<3;a++){
for(b=0;b<3;b++){
printf("Ingrese un valor para la segunda matriz, fila %d columna %d: ",a+1,b+1);
scanf("%d",&numb[a][b]);
}
}
printf("\n");
printf("\n");
printf("Segunda Matriz ingresada:\n");
printf("\n");
for(a=0;a<3;a++){
for(b=0;b<3;b++){
printf("\t%d",numb[a][b]);
} printf("\n");
} printf("\n");
printf("\n");
printf("Resultado Multiplicacion de 2 Matrices:\n");
printf("\n");
for(a=0;a<3;a++){
for(b=0;b<3;b++){
multi[a][b]=numa[a][b]*numb[a][b];
printf("\t%d",multi[a][b]);
} printf("\n");
} printf("\n");
printf("\n");
getch();
}
De ante mano, muchas gracias !
Yo lo haría de esta manera:
#include <stdio.h>
#include <stdlib.h>
int calc()
{
int numa[3][3];
int numb[3][3];
int multi[3][3];
int a,b;
for(a=0;a<3;a++){
for(b=0;b<3;b++){
printf("Ingrese un valor para la primera matriz, fila %d columna %d: ",a+1,b+1);
scanf("%d",&numa[a][b]);
}
}
printf("\n");
printf("\n");
printf("Primera Matriz ingresada\n");
printf("\n");
for(a=0;a<3;a++){
for(b=0;b<3;b++){
printf("\t%d",numa[a][b]);
} printf("\n");
} printf("\n");
printf("\n");
for(a=0;a<3;a++){
for(b=0;b<3;b++){
printf("Ingrese un valor para la segunda matriz, fila %d columna %d: ",a+1,b+1);
scanf("%d",&numb[a][b]);
}
}
printf("\n");
printf("\n");
printf("Segunda Matriz ingresada:\n");
printf("\n");
for(a=0;a<3;a++){
for(b=0;b<3;b++){
printf("\t%d",numb[a][b]);
} printf("\n");
} printf("\n");
printf("\n");
printf("Resultado Multiplicacion de 2 Matrices:\n");
printf("\n");
for(a=0;a<3;a++){
for(b=0;b<3;b++){
multi[a][b]=numa[a][b]*numb[a][b];
printf("\t%d",multi[a][b]);
} printf("\n");
} printf("\n");
printf("\n");
}
int main(){
// inicializamos la funcion calc()
calc();
// declaramos una variable para la respuesta
int resp;
printf("Desea usted multiplicar otro numero? 1.Si | 2.No");
scanf("%i", &resp);
// si responden "1" se vuelve a llamar a la función
if(resp == 1)
{
calc();
}
// por el contrario se finaliza
else
{
printf("Finalizado\n");
}
}
Lo que antes se llamaba main() ahora lo hemos renombrado como calc(), como función independiente, posteriormente creamos el main() que se encargara de ejecutar la función calc, hacer y validar la pregunta y actuar frente a una respuesta.
PD: El código que has pegado es muy mejorable
Muchisimas gracias sanko, me sirvio el codigo gracias !
Pueden cerrar el tema esta solucionado :D
http://underc0de.org/foro/c-c/matrices-con-punteros-en-c/
Fíjate que hay tenes algunos códigos que te pueden llegar a servir para poder multiplicar la matriz sin estar restringido a que tenga que ser de 3x3
No tienes permitido ver enlaces.
Registrate o Entra a tu cuenta
http://underc0de.org/foro/c-c/matrices-con-punteros-en-c/
Fíjate que hay tenes algunos códigos que te pueden llegar a servir para poder multiplicar la matriz sin estar restringido a que tenga que ser de 3x3
En realidad 3 x 3 es lo que me solicitaron, :D