Los números en Clojure incluyen:
-6, 0, 1, 25, 976 y 500000.-2.4, 0.1, 3.14, 16.984025 y 1024.0.Dos tipos numéricos comunes son int y float. Un int es un entero de 32 bits y un float es un número de punto flotante de 64 bits.
La aritmética se realiza con los operadores aritméticos estándar. Los números se pueden comparar con los operadores de comparación numérica estándar (>, <, <=, >=), el operador de igualdad (=) y el operador de desigualdad (not=).
En este ejercicio debes ejecutar lógica de forma condicional. Una forma común de hacer esto en Clojure es usar cond:
(cond (= x 5) "Expression to evaluate when x equals 5"
(> x 7) "Expression to evaluate when x is greater than 7"
:else "Expression to evaluate in all other cases")
El operador == puede ser preferible a = en algunos casos en los que se necesiten comparar números sin importar el tipo exacto. Por ejemplo,
(== 5.0 5) ;; true as both numbers are equal when type is ignored
(= 5.0 5) ;; false as the types of numbers are also taken into account here i.e. float is different from int
La guía de Clojure sobre igualdad, en concreto la sección sobre números, entra en más detalles.
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 desde 0 (apagada) hasta 10 (máxima).
Con su velocidad más baja (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 desechar. La siguiente tabla muestra cómo influye la velocidad en la tasa de éxito:
0: 0% de 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.
Implementa la función production-rate para calcular la tasa de producción por hora de la línea de ensamblaje, teniendo en cuenta su tasa de éxito:
(production-rate 6)
;;=> 1193.4
Ten en cuenta que el valor que se devuelve es un double.
Implementa la función working-items para calcular cuántos autos funcionales se producen por minuto:
(working-items 6)
;;=> 19
Ten en cuenta que el valor que se devuelve es un int.
Regístrate en Exercism para aprender y dominar Clojure con 12 conceptos105 ejercicios y mentoría humana real, todo gratis.