elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda.Error. Intentando multiplicar dos matrices.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda.Error. Intentando multiplicar dos matrices.  (Leído 2,995 veces)
sofi1

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Ayuda.Error. Intentando multiplicar dos matrices.
« en: 22 Agosto 2011, 03:12 am »

Ahi les dejo el codigo, a ver si lo logra ver cual es el error... no veo cual es :s


/*Dada una matriz A de N x N, se quiere obtener otra matriz R de N x N tal
que: R = A * AT donde: AT es la matriz transpuesta de A*/
#include<stdio.h>
#include<stdlib.h>
const int t=50;

void llenar (int matriz[t][t], int n)
{int f,c;
     for(f=0;f<n;f++)
                     {for(c=0;c<n;c++)
                                      {printf("Indique elementos [%d %d] ",f,c);
                                       scanf("%d",&matriz[f][c]);
                                      }
                     }
}

void imprimir (int matriz[t][t], int n)
{int f,c;
     for(f=0;f<n;f++)
                     {for(c=0;c<n;c++)
                                      {printf(" %d ",matriz[f][c]);
                                      }
                     printf("\n");
                     }
}


void multiplicacion  (int matriz[t][t],int n)
{int f,c,matrizmult[t][t],i,j,matriztras[t][t];
for(f=0;f<n;f++)
                {for(c=0;c<n;c++)
                                 {matrizmult[f][c]=0;
                                 }
                }
                
                 for(j=0;j<n;j++)
                     {for(i=0;i<n;i++)
                                      {matriztras[j]=matriz[j];
                                       printf(" %d ",matriz[j]);
                                      }
                     printf("\n");
                     }
                printf("\n");
    
     for(f=0;f<n;f++)
                     {for(c=0;c<n;c++)
                                      {for(i=0;i<n;i++)
                                                       {matrizmult[f][c]=matrizmult[f][c]+matriz[f][c]*matriztras[c];
                                                       }
                                      }
                     }
                    
     for(f=0;f<n;f++)
                     {for(c=0;c<n;c++)
                                      {printf(" %d ",matrizmult[f][c]);
                                      }
                     printf("\n");
                     }
}

main()
{int matriz[t][t],n;

do{printf("Indica dimension matriz:\n");
   scanf("%d",&n);
  }while(n<0 || n>t);

llenar(matriz,n);
imprimir(matriz,n);
printf("\n");
multiplicacion(matriz,n);

system("pause");
}


En línea

NecBalaam

Desconectado Desconectado

Mensajes: 23



Ver Perfil
Re: Ayuda.Error. Intentando multiplicar dos matrices.
« Respuesta #1 en: 22 Agosto 2011, 03:48 am »

Saludos...

Código:
if (b==c){
for(int i=0;i<a;i++){
for(int j=0;j<d;j++){
Solu[i][j]=0;
for(int l=0;l<c;l++){
Solu[i][j]=Solu[i][j]+(MatA[i][l]*MatB[l][j]);}}
}}else{cout<<"Error:No puede sumar una matriz de distintas dimensiones";}

for ( int i = 0; i < a; i++ ) {
for ( int j = 0; j < d; j++ ){
cout <<Solu[i][j] <<" "; }
cout<<endl;}cout<<endl;
system("pause");
break;

Mira precisamente tengo un programa pero en C++... checa por si te sirve en el ando trabajando precisamente ahurita jejeje ;)... saludos y suerte en lo que te propongas :)


En línea

No esperes tener el 100% de todo, por que no tendrás nada, mejor trabaja en equipo y obtendrás el 50% de algo.
sofi1

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Ayuda.Error. Intentando multiplicar dos matrices.
« Respuesta #2 en: 22 Agosto 2011, 04:11 am »

Código:
if (b==c){
for(int i=0;i<a;i++){
for(int j=0;j<d;j++){
Solu[i][j]=0;
for(int l=0;l<c;l++){
Solu[i][j]=Solu[i][j]+(MatA[i][l]*MatB[l][j]);}}
}}else{cout<<"Error:No puede sumar una matriz de distintas dimensiones";}

for ( int i = 0; i < a; i++ ) {
for ( int j = 0; j < d; j++ ){
cout <<Solu[i][j] <<" "; }
cout<<endl;}cout<<endl;
system("pause");
break;

Mira precisamente tengo un programa pero en C++... checa por si te sirve en el ando trabajando precisamente ahurita jejeje ;)... saludos y suerte en lo que te propongas :)

Hey gracias!  ;) Igual!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Multiplicar matrices n*n
PHP
Vampersy 6 11,869 Último mensaje 14 Octubre 2008, 23:07 pm
por Vampersy
multiplicar matrices con pipes
Programación C/C++
SO 1 3,319 Último mensaje 10 Octubre 2010, 16:04 pm
por Oblivi0n
¿Error en mi BAT? Multiplicar números [Solucionado]
Scripting
_Sergi_ 2 4,413 Último mensaje 10 Febrero 2011, 22:45 pm
por _Sergi_
Error intentando hookear FindNextFileA
Análisis y Diseño de Malware
fary 2 2,842 Último mensaje 5 Agosto 2011, 13:13 pm
por fary
Multiplicar microinstrucciones! AYUDA!
Electrónica
s3v3r 1 2,731 Último mensaje 19 Abril 2013, 00:18 am
por Meta
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines