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.
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.
jq
Para resolver el ejercicio, necesitas conocer las 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"
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.
Calcula la tasa de producción por hora de la línea de ensamblaje, teniendo en cuenta su tasa de éxito.
Calcula cuántos autos completos y funcionales se producen por minuto.
Regístrate en Exercism para aprender y dominar jq con 12 conceptos75 ejercicios y mentoría humana real, todo gratis.