Multiplication des matrices carées

Contenu du snippet

Hello ;
Le code simple qui suit procède à la multiplication de 2 matrices carées d'entiers naturels.
Par magie vous pouvez vous même saisir les éléments de vos deux matrices (ainsi que la dimension carée , évidemment).
All comment are welcome.
Thanks.

Source / Exemple :

// This program is done by 
// Billal BEGUERADJ
// Bejaia (ALGERIA)

import java.lang.*;
import java.io.*;
class MatriceOpx extends Thread
{
        static int matrice1[][];
        static int matrice2[][];
        static int resultat[][];
        static int n=2;
        int rang;
        MatriceOpx(int i)
        {
                rang=i;
                this.start();
        }
        public void run()
        {
                int i,j;
                for(i=0;i<n;i++)
                {
                        resultat[rang][i]=0;
                        for(j=0;j<n;j++)
                                resultat[rang][i]=resultat[rang][i]+matrice1[rang][j]*matrice2[j][i];
                }
        }
        public static void main(String args[])
        {
                int i,j;
                BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
                System.out.println("<-- Multiplication de 2 matrices carees de entiers naturels --> ");
                System.out.print("Veuillez introduire la dimension caree de vos matrices : ");
                try
                {
                        n=Integer.parseInt(br.readLine());
                }catch(Exception e){}
                matrice1=new int[n][n];
                matrice2=new int[n][n];
                resultat=new int[n][n];
                System.out.println("Veuillez remplir les cases de la matrice une : ");
                for(i=0;i<n;i++)
                {
                        for(j=0;j<n;j++)
                        {
                                try
                                {
                                        matrice1[i][j]=Integer.parseInt(br.readLine());
                                }catch(Exception e){}
                        }
                }
                System.out.println("Veuillez remplir les cases de la matrice deux : ");
                for(i=0;i<n;i++)
                {
                        for(j=0;j<n;j++)
                        {
                                try
                                {
                                        matrice2[i][j]=Integer.parseInt(br.readLine());
                                }catch(Exception e){}
                        }
                }
                MatriceOpx mat[]=new MatriceOpx[n];
                for(i=0;i<n;i++)
                        mat[i]=new MatriceOpx(i);
                try
                {
                        for(i=0;i<n;i++)
                                mat[i].join();
                }catch(Exception e){}
                System.out.println("Ci dessous le resultat :");
                for(i=0;i<n;i++)
                        for(j=0;j<n;j++)
                                System.out.println(resultat[i][j]);
        }
}

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.