Está en la página 1de 6

Realiza los siguientes ejercicios:

Ejercicio 1

Realiza un programa que le solicite al usuario 10 números, a continuación calculará en una


matriz los valores de dichos números multiplicados por 1, 2, 3, 4, 5, 6, 7, 8, 9 y 10, finalmente
los mostrará por pantalla en filas por valor de multiplicación.

Ejercicio 2

Solicitar al usuario dos valores, seguidamente inicializar dos matrices de 5x5 con el valor inicial
a los números introducidos por el usuario, y los siguientes valores aumentados en 1 en cada
posición para la matriz que empieza por el primer número y aumentados en 2 para la matriz
que empieza por el segundo número. A continuación, mostrar la matriz resultante de su suma,
su resta, su multiplicación y su división.

Ejemplo para la introducción de los valores 4 y 7.

Ejercicio3

Crea un algoritmo que dada un matriz de tamaño cualquiera rellene sus elementos de las
siguientes maneras.

a) Almacena en cada elemento la suma de sus indices

Índice 0 1 2 3
0 0 1 2 3
1 1 2 3 4

b) Almacena en cada elemento el valor de un contador incremental de uno en uno fila a


fila

Índice 0 1 2 3
0 0 1 2 3
1 4 5 6 7
c) Almacena en cada elemento el valor de un contador incremental de uno en uno
columna a columna

Índice 0 1 2 3
0 0 3 6 9
1 1 4 7 10
2 2 5 8 11

d) Escriba un * en su diagonal principal y un + su diagonal secundaria

Índice 0 1 2 3 4
0 * +
1 * +
2 +
3 + *
4 + *

e) Escribe asteriscos en la mitad inferior a su diagonal principal

Índice 0 1 2 3 4
0 *
1 * *
2 * * *
3 * * * *
4 * * * * *

Ejercicio 4

Matriz mágica es aquella que la suma de los elementos de sus filas y columnas es igual.
Dada una matriz cualquiera determinar si es una matriz mágica.

Ejercicio5

Dada una matriz de valores enteros mostrar por pantalla el valor máximo que contiene.
Ejercicio 6

Crea una función que reciba una array de dos dimensiones de enteros y devuelva si la matriz e
s regular o irregular.

static boolean esRegular(int[][] miArray) //devuelve true si regular, false si irregular

Crea una función que reciba una array de dos dimensiones de enteros y devuelva si la matriz e
s cuadrada o no cuadrada.

static boolean esCuadrada(int[][] miArray) //devuelve true si cuadrada, false en caso contrario

     

     * Regular -> todas las filas tienen el mismo número de columnas.

     * Cuadrada -> matriz regular con el mismo número de filas y columnas

Escribe una función que genere una matriz irregular, en forma de pirámide, recibiendo el núm
ero de filas.

static int[][] generarMatrizPiramide(int nNiveles)

nNiveles: 2

     Matriz generada: 

     0

     0 0

     

 nNiveles: 4

     Matriz generada: 

     0

     1 1

     2 2 2

     3 3 3 3
Ejercicio 7

Solicitar al usuario dos valores, seguidamente inicializar dos matrices de 5x5 con el valor

inicial a los números introducidos por el usuario, y los siguientes valores aumentados en 1 en

cada posición para la matriz que empieza por el primer número y en 2 para la matriz que

empieza por el segundo número. A continuación, mostrar la matriz resultante de su suma, su

resta, su multiplicación.

Ejercicio 8

El comité olímpico español tiene que averiguar que 3 atletas de la especialidad de maratón
serán los encargados de representar a España en los juegos olímpicos de Tokio 2020.

Para ello se tendrá en cuenta la posición (valor del 1 al 100) obtenida en cada una de las 10
maratones más importantes del año anterior, se parte de un grupo de 20 atletas
preseleccionados.

Cada una de las 10 carreras no aporta el mismo valor a la hora de calcular los puntos de los
corredores (ya que algunas son más competitivas que otras) así que el comité aplica un factor
de ponderación diferente para cada una, siendo dichos factores los siguientes:

Carrera 0: 0,5

Carrera 1: 0,6

Carrera 2: 0,7

Carrera 3: 0,8

Carrera 4: 0,9

Carrera 5: 1,0

Carrera 6: 1,1

Carrera 6: 1,2

Carrera 7: 1,3

Carrera 8: 1,4

Carrera 9: 1,5

Cada uno de estos valores se multiplican por la posición obtenida por cada corredor en la
carrera correspondiente, a continuación, para saber la puntuación general de un corredor, se
suman todas sus puntuaciones y se halla la media.

A MENOR puntuación media, mejor posición en el ranking de corredores para ir a las


olimpiadas.
El programa debe de mostrar por pantalla todos los atletas junto con sus posiciones en las
carrearas así como la posición media y su puntuación general.

 Extra 1 : Generar los datos las posiciones de cada corredor de manera aleatoria en un
rango del 1 al 100.
 Extra 2 : Generar los nombres programáticamente.
 Extra 3 : Mostrar los tres atletas seleccionados.
 Extra 4 : Mostrar la tabla ordenada de mejor a peor según el ranking del comité
olímpico.

(Sugerencia de lectura para implementar el algoritmo de ordenación:


https://runestone.academy/runestone/static/pythoned/SortSearch/ElOrdenamientoBurbuja.h
tml o cualquier otro algoritmo planteados en el recurso del enlace).

Ejemplo de salida por pantalla para 4 corredores y 5 carreras con posiciones del 1 al 10:

Nombre: Corredor 1 Posiciones: [1, 4, 2, 2, 4] Media Ponderada: 1,56

Nombre: Corredor 0 Posiciones: [10, 8, 4, 9, 5] Media Ponderada: 3,60

Nombre: Corredor 2 Posiciones: [3, 3, 10, 8, 4] Media Ponderada: 3,92

Nombre: Corredor 3 Posiciones: [8, 9, 1, 10, 5] Media Ponderada: 5,28

Ejercicio 9

Seguimos con las Olimpiadas de Tokio 2020.

Se requiere realizar un programa en Java que calcule la puntuación de los 20 finalistas de la


prueba de Decathlon.

Para obtener la puntuación utilizaremos la tabla y formulas presentes en WIKIPEDIA sección


Sistema de Puntos:

https://es.wikipedia.org/wiki/Decatl%C3%B3n#Sistema_de_puntos

Aclaración: Se utilizará la formula para eventos de pista en las pruebas:

 100 m lisos
 400 m lisos
 110 m vallas
 1500 m lisos

Genere los datos de manera aleatoria dentro de los rangos adecuados/realistas para todos los
finalistas.

Muestre por pantalla la tabla de dichas marcas junto al nombre de cada atleta y su puntuación
final.

Extra1: Ordene la tabla de atletas según sus puntuaciones finales y muéstrela por pantalla.
Ejercicio 10

Covid Attack!!

Vamos a crear un programa en Java para facilitar la asignación de fechas de vacunación a los
ciudadanos de Gotham City.

Se va a vacunar a los más ancianos primero, así que hay que saber la fecha de nacimiento de
cada ciudadano.

Por cada ciudadano tendremos dos datos, su dni (hay que comprobar que el DNI es válido con
los algoritmos que ya hemos visto en clase) y su edad (en base a su fecha de nacimiento
dd/mm/aaaa ).

Se vacunará a 2000 personas al día. Asignar una fecha de vacunación (a partir de hoy ) a cada
una de las personas en base a su fecha de nacimiento.

Trabajando con fechas en Java:

Libro de clase “Aprende a programar con Java” Anexos A.2 y A.3

Web:

https://www.campusmvp.es/recursos/post/como-manejar-correctamente-fechas-en-java-el-
paquete-java-time.aspx

https://www.baeldung.com/java-date-difference

https://www.delftstack.com/es/howto/java/java-subtract-dates/

También podría gustarte