Java - Ejercicio para introducir elementos en dos matrices

 
Vista:

Ejercicio para introducir elementos en dos matrices

Publicado por Trevor (14 intervenciones) el 20/10/2018 14:08:19
Crear una clase que pida por pantalla los elementos a introducir en dos matrices M1 y M2 de diferentes tamaños y muestre los elementos de M1 que están incluidos en M2
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kabuto
Val: 3.428
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Ejercicio para introducir elementos en dos matrices

Publicado por Kabuto (1381 intervenciones) el 21/10/2018 00:30:32
Intenta darnos un código que hayas empezado tú para ayudarte a completarlo, en lugar de esperar que te lo den ya hecho.

Como consejo, empieza con una version simplificada de lo que pide el enunciado.
Por ejemplo, en lugar de hacer que se pidan por teclado los datos para llenar las matrices, empieza ya con unas matrices codificadas directamente.
Por ejemplo:
1
2
3
4
5
6
7
8
9
10
11
12
//Simplificamos hardcodeando las matrices
int[][] M1 = {
    {0, 1, 2, 3, 4, 5, 8},
    {9, 8, 4, 20, 1, 1, 4},
    {30, 3, 9, 0, 3, 5, 3},
    {0, 1, 2, 3, 4, 5, 80},
};
int[][] M2 = {
    {10, 10, 20, 30, 80},
    {90, 10, 60, 45, 34},
    {0, 1, 24, 56, 90},
};

Ahí ya tienes declaradas dos matrices de distinto tamaño con las que empezar a trabajar. Cuando consigas hacer lo de buscar elementos en M1 que estén contenidos en M2, ya harás lo hacerlo pidiendo datos para las matrices.
Porque si no, cada vez que quieras probar tu programa, vas a pasar más rato tecleando datos que en pensar en como solucionarlo.


Segundo consejo, modula el código. Es decir, no lo hagas todo en el main() a saco paco, obteniendo un montón de lineas de código juntas que te vuelvan locuelo y te pongan los ojos rojos.

Le mecánica que habrá que seguir para conseguir lo que se pide es:
- coger el primer elemento de M1 y ver si existe uno igual en toda la matriz M2.
- Si existe, lo imprimos en pantalla. Si no existe, no hacemos nada.
- Ahora cogemos el segundo elemento de M1 y de nuevo recorremos toda la matriz M2 buscando coincidencias.
- Ahora el tercer elemento,...
- El cuarto...
- ...etc...
- Hasta llegar al último elemento de M1...

Ergo, continuamente vamos a estar cogiendo un dato de tipo int y comprobando si existe en una matriz de int.
Pues escribe un metodo que haga esto mismo, que reciba por como argumentos un int y la matriz de int que queremos comprobar.
Y el metodo podría ser boolean, de manera que cuando encuentre una coincidencia inmediatemente devuelva TRUE.
Si recorre toda la matriz y no encuentra coincidencia, que devuelva FALSE.

DE este modo, en el main() solo tendrías que recorrer los elementos de M1, pasarselos a este metodo junto con la matriz M2.
Y si el metodo devuelve TRUE, imprimes este elemento de M1. Si devuelve FALSE, no haces nada y pasas al siguiente.

Esta es un idea de como resolverlo. Tan solo hace falta saber como recorrer matrices, que supongo que si te han planteado este ejercicio, es porque ya sabrás hacerlo,.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar