Tarea 3 – DWEC – 2º DAM e-learning

Hola a todos, hoy os dejo la tarea 3 de desarrollo web entorno cliente (DWEC) de 2º DAM de e-learning.

Pueden haber diferentes tareas según la región o instituto. Si quieres que agregue alguna tarea, contacta conmigo.

Contáctanos

Versión 1

Ejercicio 1

Desarrolla un script que pida al usuario una fecha comprendida entre el 01 de enero de 1975 y el 15 de diciembre de 2019, ambas fechas incluidas.
Los formatos de fecha admitidos que puede introducir el usuario pueden ser: D/M/YYYY, DD/MM/YYYY, D-M-YYYY, DD-MM-YYYY, D.M.YYYY o DD.MM.YYYY.
Se deben lanzar excepciones para controlar los errores producidos en el proceso de validación a la hora de introducir la fecha, mostrando un mensaje diferente en función del fallo producido. Controlar los siguientes casos:
– Introducir una fecha en otro formato. Por ejemplo, usando unos separadores distintos a los especificados o introduciendo el año solo con dos cifras.
– Si el usuario introduce una fecha no válida. Por ejemplo, un día 31 en un mes que solo tiene 30 días.
– Si se introduce una fecha que no esté entre las fechas indicadas.
Cuando el usuario haya indicado una fecha en el formato correcto y sea válida, se mostrará en pantalla los días transcurridos desde el 01 de enero de 1975 (la primera fecha válida) y los días que quedan para llegar al 15 de diciembre de 2019 (el límite para la última fecha válida).
Finalmente también se mostrará el día de la semana (lunes, martes, etc.) al que corresponde la fecha introducida por el usuario.
Crea una función que se denomine «principal1» y que se invoque cuando se pulse el botón «Ejercicio1″.

Ejercicio 2

Elabora un script que pida al usuario una cadena de texto (párrafo) con al menos 10 palabras.
La cadena solo puede contener letras y/o los siguientes puntos de puntuación:
Punto «.»
Coma «,»
Punto y coma «;»
Dos puntos «:»
Comillas: simples «’» y dobles «»»
Signos de interrogación «¿» y «?»
Signos de exclamación «¡» y «!»
Puntos suspensivos «…»
Guion «-»
Se deben lanzar excepciones para controlar los errores producidos en el proceso de validación a la hora de introducir la cadena de texto, mostrando un mensaje diferente en función del fallo producido.Controlar los siguientes casos:
– Si el usuario introduce una cadena vacía.
– Si se introduce una cadena que no cumpla con los caracteres especificados.
– Si el usuario no introduce al menos 10 palabras (los signos de puntuación no se consideran palabras)
Cuando se haya introducido la cadena de texto de forma correcta, se le indicará al usuario el número de palabras que tiene el párrafo, así como un recuento total del número total de letras (solo letras), el número de letras ‘a’, el número de letras ‘e’, el número de letras ‘i’, el número de letras ‘o’ y el número de letras ‘u’.
Finalmente se mostrará qué vocal (o vocales) aparece más veces repetidas en la cadena, y el porcentaje de aparición teniendo en cuenta la frecuencia con la que se repite en el párrafo, considerando para este cálculo solo las letras de la misma (es decir que, si la cadena tiene una longitud de 6, pero solo 4 letras y la vocal «a» aparece 2 veces, entonces el porcentaje de aparición de la vocal «a» es de un 50%).
Hacer lo mismo para la vocal (o vocales) que menos aparece. Si una vocal no aparece en toda la cadena, no se considera en este cómputo.
Crea una función que se denomine «principal2» y que se invoque cuando se pulse el botón «Ejercicio2».

Ejercicio 3

En este ejercicio vamos a investigar un poco sobre el uso de arrays unidimensionales y arrays (o matrices) bidimensionales.
Para ello, crea un script que trabaje con un array unidimensional de tamaño 5 y un array (o matriz) bidimensional de tamaño 5×6.
El array unidimensional almacena el nombre de 5 equipos de balonmano.
Estos nombres se almacenan ordenados alfabéticamente de la A a la Z.
El array (o matriz) bidimensional almacena para cada equipo el índice del equipo en el array, el número de partidos ganados, el número de partido empatados, el número de partidos perdidos, el número de puntos totales (esto se calcula automáticamente) y el año de fundación (esta se generará aleatoriamente tal y como se explica a continuación).
La posición n-ésima del array unidimensional es la que se almacena en la primera columna del array (o matriz) bidimensional.
Todos los datos se piden al usuario, menos el número de puntos y el año de fundación. Suponemos que el usuario siempre va a introducir los datos de forma correcta, es decir que si le pedimos una cadena o un número va a introducir el tipo de datos que le estamos solicitando en cada momento. Lo único que hay que controlar es que el usuario no introduzca dos nombres de equipos iguales, lo que lanzará una excepción mostrando el mensaje de error correspondiente.
Suponemos que todos los equipos han jugado el mismo número de partidos. El número de puntos se calcula automáticamente sabiendo que un partido perdido supone 0 puntos, un partido empatado suma 1 punto y un partido ganado suma 3 puntos. El año de fundación se genera aleatoriamente, será un año entre el año actual del sistema (tope superior) y 50 años atrás (tope inferior).
Por ejemplo, si estamos en el año 2019, el año de fundación estará entre 2019 y 1969, ambos incluidos.
Finalmente, se mostrarán al usuario los equipos (y toda su información) ordenados por puntos de mayor a menor. Si dos (o más) equipos tienen los mismos puntos, el desempate vendrá dado por el orden alfabético del nombre del equipo.
La salida por pantalla podría ser la siguiente:
Equipo 1 (YYYY) – Puntos: ZZ
Ganados: X – Empatados: V – Perdidos: W
Equipo 2 (YYYY) – Puntos: ZZ
Ganados: X – Empatados: V – Perdidos: W

Crea una función que se denomine «principal3» y que se invoque cuando se pulse el botón «Ejercicio3».

Aquí puedes descargar la tarea.

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *