Mostrando entradas con la etiqueta suma de matrices. Mostrar todas las entradas
Mostrando entradas con la etiqueta suma de matrices. Mostrar todas las entradas

viernes, 3 de enero de 2014

[Ejercicio resuelto Java] Sumar dos matrices de orden 2x2 – Texas – Platform


Anteriormente escribí una entrada en el blog en la cual hablo un poco de algunas formas de manejar lasmatrices en java. En esta entrada veremos como sumar los elementos de dos matrices de orden 2x2 (2 filas, 2 columnas).

Enunciado:
"Realizar un programa en java el cual sume dos matrices de orden 2x2".

SumMatrices.java
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
import java.util.Scanner;

public class SumMatrices {
private Scanner tec;
private int[][] matrizA;
private int[][] matrizB;
private int[][] matrizC;


public void CargarElementos(){
tec = new Scanner(System.in);
matrizA = new int[2][2];
matrizB = new int[2][2];
System.out.println("Ingrese los elementos de la matriz A: \n");
System.out.println("Ingrese el elemento a11 de la matriz");
matrizA[0][0] = tec.nextInt();
System.out.println("Ingrese el elemento a12 de la matriz");
matrizA[0][1] = tec.nextInt();
System.out.println("Ingrese el elemento a21 de la matriz");
matrizA[1][0] = tec.nextInt();
System.out.println("Ingrese el elemento a22 de la matriz");
matrizA[1][1] = tec.nextInt();
//Matriz A:
System.out.println("A= " + matrizA[0][0] + " " + matrizA[0][1]);
System.out.println(" " + matrizA[1][0] + " " + matrizA[1][1]);
//----------------------------------------------------------------
System.out.println("\nIngrese los elementos de la matriz B: \n");
System.out.println("Ingrese el elemento b11 de la matriz");
matrizB[0][0] = tec.nextInt();
System.out.println("Ingrese el elemento b12 de la matriz");
matrizB[0][1] = tec.nextInt();
System.out.println("Ingrese el elemento b21 de la matriz");
matrizB[1][0] = tec.nextInt();
System.out.println("Ingrese el elemento b22 de la matriz");
matrizB[1][1] = tec.nextInt();
//Matriz B:
System.out.println("B= " + matrizB[0][0] + " " + matrizB[0][1]);
System.out.println(" " + matrizB[1][0] + " " + matrizB[1][1]);
//-----------------------------------------------------------------
}

public void Suma(){
matrizC = new int[2][2];
matrizC[0][0] = matrizA[0][0] + matrizB[0][0];
matrizC[0][1] = matrizA[0][1] + matrizB[0][1];
matrizC[1][0] = matrizA[1][0] + matrizB[1][0];
matrizC[1][1] = matrizA[1][1] + matrizB[1][1];
}

public void Imprimir(){
System.out.println("La Suma de ambas matrices es: \n");
//Matriz C:
System.out.println("C= " + matrizC[0][0] + " " + matrizC[0][1]);
System.out.println(" " + matrizC[1][0] + " " + matrizC[1][1]);
//-----------------------------------------------------------------
System.out.println("\n Elementos de la matriz C: \n");
System.out.println("Elemento c11: " + matrizC[0][0]);
System.out.println("Elemento c12: " + matrizC[0][1]);
System.out.println("Elemento c21: " + matrizC[1][0]);
System.out.println("Elemento c22: " + matrizC[1][1]);
}

public static void main(String[] ar){
SumMatrices sm = new SumMatrices();
sm.CargarElementos();
sm.Suma();
sm.Imprimir();
}
}

Explicación:
Declaramos tres matrices del tipo entero:
private int[][] matrizA;
private int[][] matrizB;
private int[][] matrizC;

Sí lo desean los elementos pueden ser también número reales, es decir, del tipo float.

Definimos el tamaño de nuestras matrices:
matrizA = new int[2][2];
matrizB = new int[2][2];

Luego, empezamos a cargar los elementos de ambas matrices, al finalizar la carga de los elementos de cada matriz, estos serán mostrados en pantalla para su comprobación.

El método Suma() será el encargado de sumar los elementos de ambas matrices y el resultado almacenarlo en una nueva matriz llamadamatrizC.

public void Suma(){
matrizC = new int[2][2];
matrizC[0][0] = matrizA[0][0] + matrizB[0][0];
matrizC[0][1] = matrizA[0][1] + matrizB[0][1];
matrizC[1][0] = matrizA[1][0] + matrizB[1][0];
matrizC[1][1] = matrizA[1][1] + matrizB[1][1];
}

Finalmente imprimimos los resultados en pantalla con el métodoImprimir().

Salida: