Programme Java pour ajouter deux matrices M * N à partir de l'entrée de l'utilisateur
Dans ce didacticiel, nous allons apprendre à ajouter deux matrices M * N à partir d'une entrée utilisateur. Mais avant d'aller plus loin, si vous n'êtes pas familier avec les concepts du tableau, alors consultez l'article Tableaux en Java.
Vous trouverez ci-dessous la représentation picturale de la même chose.
Saisie :
Entrez le nombre de lignes dans la première matrice :3
Entrez le nombre de colonnes dans la première matrice :3
Saisissez le nombre de lignes dans la seconde matrice :3
Saisissez le nombre de lignes dans la seconde matrice :3
Saisissez tous les éléments de la première matrice :1 2 3 4 5 6 7 8 9
Entrez tous les éléments de la deuxième matrice :9 8 7 6 5 4 3 2 1
Sortie :
Première matrice :
1 2 3
4 5 6
7 8 9
Deuxième matrice :
9 8 7
6 5 4
3 2 1
Matrice résultante :
10 10 10
10 10 10
10 10 10
Programme 1 :Ajouter une matrice M*N à partir de l'entrée utilisateur
Dans ce programme, nous allons effectuer une addition matricielle. L'ajout d'une matrice n'est possible que lorsque les matrices données sont de la même taille, c'est-à-dire que le nombre de lignes et de colonnes des deux matrices doit être le même.
Algorithme
- Démarrer
- Déclarer des variables pour la taille de la matrice
- Initialiser le nombre de lignes et de colonnes pour la première matrice.
- Initialiser le nombre de lignes et de colonnes pour la deuxième matrice.
- Vérifiez si la taille des deux matrices est égale ou non.
- Si égal, demander à l'utilisateur d'initialiser les deux matrices.
- Après l'initialisation, imprimez les deux matrices.
- Créer une nouvelle matrice pour stocker la somme des deux matrices.
- Parcourez chaque élément des deux matrices et additionnez-les.
- Stocker cette somme dans la nouvelle matrice à l'index correspondant.
- Renvoyer la matrice résultante.
- Imprimez la matrice résultante.
- Si les tailles des deux matrices ne sont pas égales, imprimez un message pour réessayer.
- Arrêtez.
Vous trouverez ci-dessous le code correspondant en langage Java.
/*Java Program to add two matrix*/
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
int p, q, m, n; //Declare matrix size
Scanner sc = new Scanner(System.in);
System.out.print("Enter the number of rows in the first matrix:");
p = sc.nextInt(); //Initialize first matrix size
System.out.print("Enter the number of columns in the first matrix:");
q = sc.nextInt(); //Initialize first matrix size
System.out.print("Enter the number of rows in the second matrix:");
m = sc.nextInt(); //Initialize second matrix size
System.out.print("Enter the number of columns in the second matrix:");
n = sc.nextInt(); //Initialize second matrix size
if (p == m && q == n)
{
int a[][] = new int[p][q]; //Declare first matrix
int b[][] = new int[m][n]; //Declare second matrix
int c[][] = new int[m][n]; //Declare third matrix
//Initialize the first matrix
System.out.println("Enter all the elements of first matrix:");
for (int i = 0; i < p; i++)
{
for (int j = 0; j < q; j++)
{
a[i][j] = sc.nextInt();
}
}
System.out.println("");
//Initialize the second matrix
System.out.println("Enter all the elements of second matrix:");
for (int i = 0; i < m; i++)
{
for (int j = 0; j < n; j++)
{
b[i][j] = sc.nextInt();
}
}
System.out.println("");
//Print the first matrix
System.out.println("First Matrix:");
for (int i = 0; i < p; i++)
{
for (int j = 0; j < q; j++)
{
System.out.print(a[i][j]+" ");
}
System.out.println("");
}
//Print the second matrix
System.out.println("Second Matrix:");
for (int i = 0; i < m; i++)
{
for (int j = 0; j < n; j++)
{
System.out.print(b[i][j]+" ");
}
System.out.println("");
}
//Loop to add matrix elements
for (int i = 0; i < p; i++)
{
for (int j = 0; j < n; j++)
{
for (int k = 0; k < q; k++)
{
c[i][j] = a[i][j] + b[i][j];
}
}
}
//Print the resultant matrix
System.out.println("Matrix after addition:");
for (int i = 0; i < p; i++)
{
for (int j = 0; j < n; j++)
{
System.out.print(c[i][j]+" ");
}
System.out.println("");
}
}
else
{
System.out.println("Addition not possible");
System.out.println("Try Again");
}
}
}
Entrez le nombre de lignes dans la première matrice :3
Entrez le nombre de colonnes dans la première matrice :3
Entrez le nombre de lignes dans la deuxième matrice :3
Entrez le nombre de colonnes dans la seconde matrice :3
Saisir tous les éléments de la première matrice :1 2 3 4 5 6 7 8 9
Saisir tous les éléments de la deuxième matrice :9 8 7 6 5 4 3 2 1
Première matrice :
1 2 3
4 5 6
7 8 9
Deuxième matrice :
9 8 7
6 5 4
3 2 1
Matrice après addition :
10 10 10
10 10 10
10 10 10
Programme 2 :Ajouter une matrice M*N à partir de l'entrée utilisateur
Dans ce programme, nous ajouterons deux matrices. Lorsque deux matrices d'ordre m*n et m*n sont données, la matrice résultante produite sera d'ordre m*n. Un point à noter ici est que pour effectuer une addition de matrice, les matrices doivent être du même ordre.
Algorithme
- Démarrer
- Déclarer des variables pour la taille de la matrice
- Initialiser le nombre de lignes et de colonnes pour la première matrice.
- Initialiser le nombre de lignes et de colonnes pour la deuxième matrice.
- Vérifiez si la taille des deux matrices est égale ou non.
- Si égal, demander à l'utilisateur d'initialiser les deux matrices.
- Après l'initialisation, imprimez les deux matrices.
- Créer une nouvelle matrice pour stocker la somme des deux matrices
- Appelez une méthode qui renverra leur somme.
- Parcourez chaque élément des deux matrices et additionnez-les.
- Stocker cette somme dans la nouvelle matrice à l'index correspondant.
- Renvoyer la matrice résultante.
- Imprimez la matrice résultante.
- Si les tailles des deux matrices ne sont pas égales, imprimez un message pour réessayer.
- Arrêtez.
Vous trouverez ci-dessous le code correspondant en langage Java.
/*Java Program to add two matrix*/
import java.util.Scanner;
public class Main
{
// To print a Matrix
static void printMatrix(int M[][],int m,int n)
{
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++)
System.out.print(M[i][j] + " ");
System.out.println();
}
}
//To add the two matrices and store in matrix c
static int[][] add(int a[][], int b[][], int m,int n)
{
int i, j;
int c[][] = new int[m][m];
for (i = 0; i < m; i++)
for (j = 0; j < n; j++)
c[i][j] = a[i][j] + b[i][j];
return c;
}
public static void main(String[] args)
{
int p, q, m, n; //Declare matrix size
Scanner sc = new Scanner(System.in);
System.out.print("Enter the number of rows in the first matrix:");
p = sc.nextInt(); //Initialize first matrix size
System.out.print("Enter the number of columns in the first matrix:");
q = sc.nextInt(); //Initialize the first matrix size
System.out.print("Enter the number of rows in second matrix:");
m = sc.nextInt(); //Initialize second matrix size
System.out.print("Enter the number of columns in the second matrix:");
n = sc.nextInt(); //Initialize the second matrix size
if (p == m && q == n)
{
int a[][] = new int[p][q]; //Declare first matrix
int b[][] = new int[m][n]; //Declare second matrix
//Initialize the first matrix
System.out.println("Enter all the elements of first matrix:");
for (int i = 0; i < p; i++)
{
for (int j = 0; j < q; j++)
{
a[i][j] = sc.nextInt();
}
}
System.out.println("");
//Initialize the second matrix
System.out.println("Enter all the elements of second matrix:");
for (int i = 0; i < m; i++)
{
for (int j = 0; j < n; j++)
{
b[i][j] = sc.nextInt();
}
}
// Print the result
System.out.println("First Matrix:");
printMatrix(a, m, n);
// Print the second matrix
System.out.println("Second Matrix:");
printMatrix(b, m, n);
int c[][] = add(a, b, m,n);
// Print the result
System.out.println("Resultant Matrix:");
printMatrix(c, m, n);
}
else
{
System.out.println("Addition not possible");
System.out.println("Try Again");
}
}
}
Entrez le nombre de lignes dans la première matrice :3
Entrez le nombre de colonnes dans la première matrice :3
Entrez le nombre de lignes dans la deuxième matrice :3
Entrez le nombre de colonnes de la deuxième matrice :3
Saisir tous les éléments de la première matrice :6 7 8 5 4 3 2 2 9
Saisir tous les éléments de la deuxième matrice :9 8 7 6 7 8 9 9 2
Première matrice :
6 7 8
5 4 3
2 2 9
Deuxième matrice :
9 8 7
6 7 8
9 9 2
Matrice résultante :
15 15 15
11 11 11
11 11 11