Gotas de lluvia es una versión un poco más compleja del desafío FizzBuzz, una pregunta clásica de entrevista.
Tu tarea es convertir un número en sus correspondientes sonidos de gotas de lluvia.
Si un número dado:
"Plong"."PlingPlang"."34".Necesitas implementar la función convert, que devuelve el número convertido en sonidos de gotas de lluvia. Puedes usar la firma que te proporcionamos si tienes dudas sobre los tipos, pero no dejes que limite tu creatividad:
convert :: Int -> String
Este ejercicio trabaja con datos de texto. Por razones históricas, el tipo String de Haskell es sinónimo de [Char], una lista de caracteres. Para manejar datos de texto de forma más eficiente, puedes usar el tipo Text.
Como extensión opcional de este ejercicio, puedes
- text a tu lista de dependencias en package.yaml.Data.Text de la siguiente manera:import qualified Data.Text as T
import Data.Text (Text)
convert :: Int -> Text y referirte a los combinadores de Data.Text como, por ejemplo, T.pack.Data.Text,String por Text en Raindrops.hs:convert :: Int -> Text
Esta parte es totalmente opcional.
Regístrate en Exercism para aprender y dominar Haskell con 107 ejercicios y mentoría humana real, todo gratis.
Explora soluciones con canalizaciones funcionales, multiplicación de matrices, soluciones basadas en tablas precalculadas con una macro, un enfoque orientado a objetos, un uso impresionante tanto de Python como de TCL, y una edición empresarial.