Tracks
/
jq
jq
/
Ejercicios
/
Línea de ensamblaje
Línea de ensamblaje

Línea de ensamblaje

Ejercicio de aprendizaje

Introducción

Números

De el manual

jq admite el mismo conjunto de tipos de datos que JSON: números, strings, Boolean, arrays, objetos (que en el habla de JSON son hashes con solo claves de tipo string) y «null».

Vamos a centrarnos en los números.

Números y operadores numéricos

Todos los números, sean enteros o no, son números de punto flotante de doble precisión IEEE754. Esto nos limita a 53 bits de precisión.

Puedes usar con los números los operadores habituales:

  • aritmética: +, -, *, /, %

  • comparación: ==, !=, <, <=, >=, >

  • las funciones matemáticas estándar

    Para las funciones de un solo argumento, pasa el valor a la función mediante una tubería

    $ jq -n '(1 | atan) * 4'
    3.141592653589793
    

    En el caso de las funciones de dos argumentos, estas ignorarán la entrada y esperarán que le pases los valores como parámetros (recuerda que los parámetros se separan con punto y coma)

    $ jq -n 'pow(2; 10)'
    1024
    

    El punto y coma es el separador de los argumentos de una función, no la coma.

Otras expresiones de jq

Para resolver el ejercicio, necesitas conocer las expresiones condicionales.

Expresiones condicionales

jq usa una expresión if-then-else para las expresiones condicionales. Como expresión, se coloca dentro de una tubería.

La sintaxis es: if CONDITION then TRUE_EXPR else FALSE_EXPR end.

La cláusula else es opcional.

42 | if . < 33 then "small" else "larger" end
# => "larger"

Puedes añadir condiciones adicionales con elif

42 | if . < 33 then "small"
     elif . < 67 then "medium"
     else "large"
     end
# => "medium"

Instrucciones

En este ejercicio vas a escribir código para analizar la producción de una línea de ensamblaje en una fábrica de autos. La velocidad de la línea de ensamblaje puede ir de 0 (apagada) a 10 (máxima).

A su velocidad más lenta (1), se producen 221 autos cada hora. La producción aumenta de forma lineal con la velocidad. Así que con la velocidad en 4, debería producir 4 * 221 = 884 autos por hora. Sin embargo, las velocidades más altas aumentan la probabilidad de que se produzcan autos defectuosos, que después hay que descartar. La siguiente tabla muestra cómo influye la velocidad en la tasa de éxito:

  • 1 a 4: 100 % de tasa de éxito.
  • 5 a 8: 90 % de tasa de éxito.
  • 9: 80 % de tasa de éxito.
  • 10: 77 % de tasa de éxito.

Tienes dos tareas.

1. Calcula la tasa de producción por hora

Calcula la tasa de producción por hora de la línea de ensamblaje, teniendo en cuenta su tasa de éxito.

2. Calcula la cantidad de unidades funcionales producidas por minuto

Calcula cuántos autos completos y funcionales se producen por minuto.

Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
jq Exercism

¿Todo listo para empezar Línea de ensamblaje?

Regístrate en Exercism para aprender y dominar jq con 12 conceptos75 ejercicios y mentoría humana real, todo gratis.