Rutas
/
C#
C#
/
Ejercicios
/
Acumular
Acumular

Acumular

Fácil

Instrucciones

Implementa la operación accumulate, que, dada una colección y una operación que hay que 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 ser capaz de producir la colección de cuadrados:

  • 1, 4, 9, 16, 25

Consulta el conjunto de pruebas para ver la firma que se espera de la función.

Restricciones

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

En concreto, no puedes usar ninguno de los métodos LINQ integrados.

Prueba de evaluación diferida

Como accumulate devuelve un IEnumerable, su ejecución se aplaza hasta que se llame a ToList() sobre él, lo cual se comprueba con el método Accumulate_is_lazy.

Pistas

Este ejercicio requiere que escribas un método de extensión. Para obtener más información, consulta esta página.

Editar en GitHub El enlace se abre en una ventana o pestaña nueva
C# Exercism

¿Listo para empezar Acumular?

Regístrate en Exercism para aprender y dominar C# con 62 conceptos178 ejercicios y mentoría humana real, todo gratis.