Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Java - moltiplicazione matrici
Forum - Java - moltiplicazione matrici

Avatar
aduri (Normal User)
Newbie


Messaggi: 11
Iscritto: 03/10/2006

Segnala al moderatore
Postato alle 15:48
Giovedì, 12/10/2006
Salve a tutti,
mi sto perdendo all'interno dei cicli nidificati per risolvere la moltiplicazione di queste 2 matrici.
          

Non riesco a inserire l'immagine!!!

comunque la prima matrice va da 1 a 15  

la seconda da 1 a 20

il risultato  
175   190   205   220  
400   440   480   520
625  690   755    820



Codice:
/*
  Moltiplicazione tra 2 matrici 3x5 e 5x4
*/

class Matrici
{
  public static void main(String[] args)
  {
    int a[][]=new int[3][5];
    int b[][]=new int[5][4];
    int c[][]=new int[3][4];

    int i, j, x, y, z;
    x=1;
    for(i=0; i<3; i=i+1)
   {
      for(j=0; j<5; j=j+1)
      {
        a[j]=x;
    x=x+1;
      }
   }
    
    y=1;
    for(i=0; i<5; i=i+1)
   {
      for(j=0; j<4; j=j+1)
      {
        b[j]=y;
    y=y+1;
      }
   }

for(z=0; z<3; z=z+1)
{  
    for(i=0; i<3; i=i+1)
   {
      for(j=0; j<4; j=j+1)
      {
        c[j]+=a[z][j]*b[j];
        
      }
   }
  }
    for(i=0; i<3; i=i+1)
    {
      for(j=0; j<5; j=j+1)
      {
        System.out.print(a[j]+" ");    
      }
      System.out.println("");
    }
    System.out.println("");
    for(i=0; i<5; i=i+1)
    {
      for(j=0; j<4; j=j+1)
      {
        System.out.print(b[j]+" ");    
      }
      System.out.println("");
    }
    System.out.println("");
    for(i=0; i<3; i=i+1)
    {
      for(j=0; j<4; j=j+1)
      {
        System.out.print(c[j]+" ");    
      }
      System.out.println("");
    }
  }
}

PM Quote
Avatar
aduri (Normal User)
Newbie


Messaggi: 11
Iscritto: 03/10/2006

Segnala al moderatore
Postato alle 12:49
Venerdì, 13/10/2006
Risolto  :k:

PM Quote
Avatar
Fr3d3R!K (Ex-Member)
Expert


Messaggi: 589
Iscritto: 17/08/2006

Segnala al moderatore
Postato alle 14:45
Domenica, 15/10/2006
perchè non posti come hai fatto? risolverai il problema ad altre persone che magari ci combattono...

PM Quote
Avatar
aduri (Normal User)
Newbie


Messaggi: 11
Iscritto: 03/10/2006

Segnala al moderatore
Postato alle 20:02
Domenica, 15/10/2006
Volentieri:k:
Forse e' un po troppo sullo stile procedurale....
Ecco il codice:


/*
  Moltiplicazione tra 2 matrici 3x5 e 5x4
*/

class Matrici
{
  public static void main(String[] args)
  {
    int a[][]=new int[3][5];
    int b[][]=new int[5][4];
    int c[][]=new int[3][4];

    int i, j, x, y, z;
    x=1;
    for(i=0; i<3; i=i+1)
   {
      for(j=0; j<5; j=j+1)
      {
        a[j]=x;
    x=x+1;
      }
   }
    
    y=1;
    for(i=0; i<5; i=i+1)
   {
      for(j=0; j<4; j=j+1)
      {
        b[j]=y;
    y=y+1;
      }
   }

    
    for(i=0; i<3; i=i+1)
   {
     for(z=0; z<5; z=z+1)
     {
      for(j=0; j<4; j=j+1)
      {
        c[j]+=a[z]*b[z][j];
        
      }
     }
   }
    for(i=0; i<3; i=i+1)
    {
      for(j=0; j<5; j=j+1)
      {
        System.out.print(a[j]+" ");    
      }
      System.out.println("");
    }
    System.out.println("");
    for(i=0; i<5; i=i+1)
    {
      for(j=0; j<4; j=j+1)
      {
        System.out.print(b[j]+" ");    
      }
      System.out.println("");
    }
    System.out.println("");
    for(i=0; i<3; i=i+1)
    {
      for(j=0; j<4; j=j+1)
      {
        System.out.print(c[j]+" ");    
      }
      System.out.println("");
    }
  }
}
Codice sorgente - presumibilmente Plain Text

  1.  


Ultima modifica effettuata da aduri il 15/10/2006 alle 20:03
PM Quote