Saltar al contenido

LDP - Trabajo práctico 1

El primer trabajo práctico consiste en escribir un programa JavaScript que solucione el problema dado. En todos los casos, la respuesta debe mostrarse por la consola, mediante el uso conveniente de la función console.log('mensaje').

El código del programa desarrollado debe enviarse por mail antes del martes 28/9, y será una de las calificaciones del alumno en la cursada.

Cada uno deberá resolver el problema correspondiente a su número ya asignado.

  1. Máxima diferencia. Definir una variable de tipo arreglo con al menos 20 números cualesquiera, y escribir un programa que calcule y muestre la diferencia entre el máximo y el mínimo número contenido en esa lista.
    Por ejemplo, si el arreglo fuera [58, 76, 40, 24, 74, 96, 47, 32, 63, 91, 41, 39, 27, 26, 14, 26, 99, 22, 79, 67], el resultado debería ser 85.
  2. Día del año. Dado un día y un mes, escribir un programa que calcule el número de día dentro del año (suponiendo que no sea bisiesto).
    Por ejemplo, el 10 de febrero es el día número 41 del año.
  3. Números pares. Escribir un programa que pregunte al usuario dos números distintos, y luego calcule cuántos números pares hay entre ellos.
    Por ejemplo, si el usuario ingresara el 10 y el 20, el programa debería responder 4.
  4. Siete o diez. Escribir un programa que genere un arreglo conteniendo los primeros 25 números enteros que sean múltiplos de 7 o divisibles por 11.
    Por ejemplo, el 21 y el 22 deberán estar en ese arreglo.
  5. Promedios. Crear un programa que le pida al usuario que ingrese números uno a la vez (cuando no ingrese nada se supone que ya no desea agregar más) y a continuación calcule el promedio de los números ingresados.
    Por ejemplo, si el usuario ingresara 7, 8, 8 y 11, la respuesta debería ser 8.5.
  6. Años bisiestos. Escribir un programa que le pida al usuario un año, y a continuación escriba los 10 años bisiestos posteriores a él.
    Por ejemplo, si el usuario ingresara el año actual (2021), el primer número que debería mostrar es el 2024.
  7. Índice de masa corporal. Escribir un programa para un médico que le solicite el peso del paciente (en kg) y su altura (en metros) y muestre un mensaje según el índice de masa corporal resultante (IMC, que se calcula como el peso dividido el cuadrado de la altura), de acuerdo a esta escala:
    Si el IMC es menor a 18, el mensaje es "el paciente es de bajo peso";
    Si el IMC está entre 18 y 25, el mensaje es "el paciente tiene peso normal";
    Si el IMC está entre 25 y 30, el mensaje es "el paciente tiene sobrepeso";
    Si el IMC es superior a 30, el mensaje es "el paciente tiene obesidad".
    Por ejemplo, si el médico ingresara 72 y 1.70, el programa debería responder "el paciente tiene peso normal".
  8. Conjetura. Se le pide al usuario un número entero, y luego se realiza la siguiente operación: si el número es par, se divide por 2; si es impar, se lo multiplica por 3 y se le suma 1. Se repite la operación al número resultante hasta que se llegue a 1 (uno). Escribir un programa que cuente y muestre cuántas veces fue necesario repetir esa operación para lograrlo.
    Por ejemplo, si el usuario ingresa 5, la respuesta del programa debe ser 5.
  9. Histograma de números. Crear un arreglo conteniendo 30 dígitos cualesquiera (números del 0 al 9) y escribir un programa que muestre la frecuencia de cada uno de los 10 dígitos, es decir, cuántas veces aparece el 0, cuántas veces el 1, etc.
    Por ejemplo, si el arreglo fuera
    [8, 2, 6, 8, 4, 8, 2, 6, 0, 1, 4, 7, 6, 9, 9, 0, 9, 0, 2, 6, 4, 0, 1, 3, 6, 3, 9, 4, 4, 3],
    el programa debería mostrar algo como
    0: 4 veces, 1: 2 veces, 2: 3 veces, 3: 3 veces, 4: 5 veces, 5: 0 veces, 6: 5 veces, 7: 1 vez, 8: 3 veces, 9: 4 veces.
  10. Números místicos. Llamaremos "número místico" a aquél cuya suma de sus dígitos sea 13. Escribir un programa que muestre todos los "números místicos" de dos cifras.
    Por ejemplo, el 67 debe estar en la lista.
  11. "Blur" de datos. Se tiene un arreglo con una serie de números. Escribir un programa que genere un nuevo arreglo, donde cada número del arreglo dado (con excepción del primero y del último, que se dejan sin modificar) se reemplace con el promedio de él y sus dos vecinos (anterior y posterior). Por ejemplo, el segundo número del arreglo se reemplaza por el promedio del primero, segundo y tercero; el tercero se reemplaza por el promedio del segundo, tercero y cuarto, etc.
    Por ejemplo, si el arreglo fuera [3, 7, 5, 9], el nuevo arreglo debe ser [3, 5, 7, 9].
  12. De números a palabras. A partir de un arreglo de dígitos (números del 0 al 9), escribir un programa que muestre la misma secuencia pero en palabras, separadas por coma, con excepción de la última que debe estar separada por 'y'.
    Por ejemplo, si el arreglo es [2, 4, 1, 9, 0] el programa deberá mostrar el mensaje "dos, cuatro, uno, nueve y cero".
  13. Validación de identidad. Una tarjeta de identificación tiene un código de 10 dígitos, pero sólo son válidos aquellos códigos que pasan esta prueba: el resultado de sumar la multiplicación del primer dígito por 1, del segundo por 2, del tercero por 3, etc, debe ser múltiplo de 7. Escribir un programa que pida al usuario ingresar de a uno los 10 dígitos y al finalizar le diga si el código es válido o no.
    Por ejemplo, el código 8261373503 es válido.
  14. Capicúas. Escribir un programa que muestre todos los números capicúas de 5 dígitos (suponiendo completados con ceros a la izquierda de ser necesario).
    Por ejemplo, el 04540 debe estar entre los números mostrados
  15. Los pares primero. Dado un arreglo de números, generar otro arreglo conteniendo los mismos números, pero poniendo primero todos los pares, y luego todos los impares.
    Por ejemplo, si el arreglo dado es [4, 7, 9, 1, 6, 8, 10, 11, 18], el arreglo resultante puede ser [4, 6, 8, 10, 18, 7, 9, 1, 11].