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:
Y la operación:
x => x * x)Tu código debería ser capaz de producir la colección de cuadrados:
Consulta el conjunto de pruebas para ver la firma que se espera de la función.
¡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.
Los tests de este ejercicio provocarán errores de compilación si la firma de tu función no encaja con ellos, aunque no se lleguen a ejecutar. Puede que quieras comentar algunos tests y generalizar tu solución paso a paso.
Regístrate en Exercism para aprender y dominar Rust con 99 ejercicios y mentoría humana real, todo gratis.