Underc0de

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: ZanGetsu en Diciembre 01, 2013, 04:13:54 AM

Título: [SOLUCIONADO] Duda Multiplicacion de Matrices
Publicado por: ZanGetsu en Diciembre 01, 2013, 04:13:54 AM
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 !
Título: Re:Duda Multiplicacion de Matrices
Publicado por: Sanko en Diciembre 01, 2013, 09:05:05 AM
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
Título: Re:Duda Multiplicacion de Matrices
Publicado por: ZanGetsu en Diciembre 01, 2013, 01:00:44 PM
Muchisimas gracias sanko, me sirvio el codigo gracias !

Pueden cerrar el tema esta solucionado :D
Título: Re:Duda Multiplicacion de Matrices
Publicado por: Alejandro_N12 en Diciembre 01, 2013, 09:08:30 PM
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
Título: Re:Duda Multiplicacion de Matrices
Publicado por: ZanGetsu en Diciembre 01, 2013, 09:27:48 PM
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