Tarea 2 : UD 3
Condiciones de entrega.
Crear un único proyecto llamado “ApellidosNombre” que contenga 4 clases cada
una con su método main. En estas clases se realizará cada uno de los 3 ejercicios
propuestos. Una vez finalizado comprimid la carpeta del proyecto en un archivo zip con el
mismo nombre y lo adjuntáis a la tarea del classroom.
Debéis añadir comentarios que indiquen el apartado que estáis resolviendo y lo
que vais a hacer.
Puntuación.
La tarea está puntuada sobre 10 puntos..
Ejercicios.
1. Crear un programa en Java que llene un array de 40 números enteros con
valores aleatorios entre 0 y 100 y muestre el siguiente menú por pantalla :
(Total 6 puntos)
a. Mostrar los 3 primeros valores inferiores a uno introducido por teclado junto
con las posiciones que ocupan.. (0,5 ptos)
b. Calcular la media de los n últimos valores almacenados,siendo n un valor
que introduce el usuario por teclado. En caso de que n sea superior al
tamaño del array se debe de informar del error y volver a solicitarlo , hasta un
máximo de 3 veces (0,5 pto)
c. Mostrar por pantalla los 10 primeros valores que sean superiores a la media
de la matriz junto con las posiciones que ocupan. (0,5 pto)
d. Mostrar por pantalla el primer valor inferior a n2 , siendo n2 un valor
introducido por el usuario. (1 pto)
e. Mostrar por pantalla los valores que sean primos. (1 pto)
f. Mostrar el tercer valor más alto y el cuarto valor más pequeño ,junto con las
posiciones originales que ocupan(es decir sin ordenar el array). (1 pto)
g. Crear una copia del array , pero moviendo todos los elementos una posición
a la izquierda,el elemento que ocupa la posición cero debe de desplazarse a
la última posición:. (1 pto)
Ejemplo: 4 , 6 , 7 , 8 ,9 → 6 , 7 , 8 , 9, 4
h. Salir. (0,5 ptos Funcionamiento del menú en general)
2. Crear un programa que trabaje con una matriz con capacidad para 20
direcciones de correo , introducir por código 5 correos en las primeras
posiciones y que permita al usuario a través de un menú las siguientes
operaciones: (Total 2 puntos , 0,5 puntos cada apartado)
a. Guardar correo en la primera posición vacía(aquella que almacena un valor
null). Se debe de procesar de forma que no se admite ningún correo que no
tenga un @ y un punto después del arroba , además el punto no puede ser
el último carácter. También se puede validar utilizando directamente una
expresión regular.(0,5 ptos)
b. Buscar correo : El usuario introduce una dirección y el programa indica en
qué posición se encuentra,en caso de no encontrarla debe informar de dicha
circunstancia. (0, 5 ptos)
c. Contar correos : El usuario indica el dominio : gmail , hotmail o yahoo y el
programa devuelve la cantidad de correos de dicho dominio que hay en la
matriz. (0,5 pto)
d. Mostrar el porcentaje de correos de cada uno de los 3 dominios : gmail,
hotmail o outlook y yahoo. (0,5 pto)
3. Programar el juego de adivina el número. Para ello el programa genera un
número aleatorio y el usuario debe de acertar de qué número se trata. (1 pto)
Existen 3 niveles:
● Nivel 1: El número generado está entre 1 y 15. El usuario tiene 3
intentos.
● Nivel 2: Número generado entre 1 y 30 . El usuario tiene 4 intentos.
● Nivel 3: Número generado entre 1 y 50. El usuario tiene 5 intentos.
El juego debe de ir informando si el número es menor o mayor al introducido así
como de los intentos o vidas que le quedan al usuario.
Debe de poder jugarse tantas veces como se desee. El juego debe de ir acumulando
una puntuación: Cada uno debe pensar un sistema de puntuación y explicarlo en un
comentario.
4. Generar una matriz 2D con 5 filas y 5 columnas con números aleatorios en el
rango [-10,10]. Mostrar la matriz generada por consola y a continuación
solicitar al usuario que escoja entre una de las siguientes opciones
a. Calcular la suma de los números positivos que sean superiores a la media de
los valores de las 2 primeras filas. El programa debe de mostrar las dos
primeras filas, la media, los números positivos superiores a la media y el
resultado de dicha suma (0,25 ptos)
b. En el caso de que en la tercera fila haya un cero y en la última no,
intercambiar la tercera fila por la última. Mostrar por consola la matriz original
y la final en caso de haber realizado el cambio. (0,25 ptos)
c. Calcular la suma de la columna que contenga más números positivos (0,25
ptos)
d. Modificar la matriz de forma que los valores de cada fila que sean cero pasen
para las posiciones finales, 0,25 ptos)