Tracks
/
F#
F#
/
Ejercicios
/
Acumular
Acumular

Acumular

Fácil

Instrucciones

Implementa la operación accumulate, que, dada una colección y una operación que se debe aplicar a cada elemento de la colección, devuelve una nueva colección con el resultado de aplicar esa operación a cada elemento de la colección de entrada.

Dada la colección de números:

  • 1, 2, 3, 4, 5

Y la operación:

  • elevar un número al cuadrado (x => x * x)

Tu código debería poder producir la colección de cuadrados:

  • 1, 4, 9, 16, 25

Revisa la suite de pruebas para ver la firma de función esperada.

Restricciones

¡No toques esa funcionalidad de collect/map/fmap/whatchamacallit que te ofrece tu biblioteca estándar! Resuelve este ejercicio por tu cuenta usando otras herramientas básicas.

Sugerencias

Para este ejercicio te resulta útil la siguiente funcionalidad de F#:

  • Recursión de cola Evita el desbordamiento de pila con entradas grandes usando recursión de cola. Aunque no hay casos de prueba que lo verifiquen explícitamente, usar recursión de cola da como resultado una solución más eficiente. Otro buen recurso sobre recursión de cola es esta entrada de blog.
  • Inferencia de tipos El compilador de F# puede inferir los tipos automáticamente, lo que significa que muchas veces no tienes que escribir ningún tipo. Para más información sobre cómo funciona y sus ventajas, consulta esta página.
Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
F# Exercism

¿Todo listo para empezar Acumular?

Regístrate en Exercism para aprender y dominar F# con 18 conceptos148 ejercicios y mentoría humana real, todo gratis.