Es realmente difícil tratar de entender que es lo que estan haciendo en el test.
Recuerden que este paradigma es un paradigma DECLARATIVO (Nos abstraemos del algoritmo).
Fuera de eso:
filtroUsuarios no es expresivo. La funcion (Estimo) filtra los usuarios que tienen mas de cierto dinero en su billetera, luego de aplicar la transacción, y eso no se entiende en la firma de la funcion
El enunciado dice lo siguiente:
A partir de un conjunto de usuarios, determinar quiénes quedarían con un saldo de al menos N créditos. Probar que para el bloque 1, y los usuarios Pepe y Lucho, el único que quedaría con un saldo mayor a 10, es Pepe. Atención: Nos interesa el Pepe original antes del bloque. No el Pepe con más crédito.
Esto nos indica que puede ser mas de un usuario el que termine con un saldo mayor a N (filter de hecho, devuelve una lista). En este caso en particular, debería devolver una lista solo con el elemento pepe.
En síntesis, tienen que crear una funcion que dado un bloque y una lista de usuarios, devuelva otra lista de usuarios que contenga solo los que cumplan que luego de aplicarles el bloque, su billetera sea mayor o igual a cierto numero (Pasado por parámetros)
Les recomiendo crear una funcion "mejorSegun" para pasarle al filter, y pasarle un criterio (Funcion cof cof) y una lista de elementos, y que devuelva el mejor elemento de esa lista según el criterio que le pasaron. Pueden usar una de dos herramientas: find o fold. Cabe aclarar que ese criterio puede ser CUALQUIER COSA COMPARABLE, y la lista puede ser de cualquier elemento
Es realmente difícil tratar de entender que es lo que estan haciendo en el test. Recuerden que este paradigma es un paradigma DECLARATIVO (Nos abstraemos del algoritmo).
Fuera de eso: filtroUsuarios no es expresivo. La funcion (Estimo) filtra los usuarios que tienen mas de cierto dinero en su billetera, luego de aplicar la transacción, y eso no se entiende en la firma de la funcion
El enunciado dice lo siguiente:
A partir de un conjunto de usuarios, determinar quiénes quedarían con un saldo de al menos N créditos. Probar que para el bloque 1, y los usuarios Pepe y Lucho, el único que quedaría con un saldo mayor a 10, es Pepe. Atención: Nos interesa el Pepe original antes del bloque. No el Pepe con más crédito.
Esto nos indica que puede ser mas de un usuario el que termine con un saldo mayor a N (filter de hecho, devuelve una lista). En este caso en particular, debería devolver una lista solo con el elemento pepe.
En síntesis, tienen que crear una funcion que dado un bloque y una lista de usuarios, devuelva otra lista de usuarios que contenga solo los que cumplan que luego de aplicarles el bloque, su billetera sea mayor o igual a cierto numero (Pasado por parámetros)
Les recomiendo crear una funcion "mejorSegun" para pasarle al filter, y pasarle un criterio (Funcion cof cof) y una lista de elementos, y que devuelva el mejor elemento de esa lista según el criterio que le pasaron. Pueden usar una de dos herramientas: find o fold. Cabe aclarar que ese criterio puede ser CUALQUIER COSA COMPARABLE, y la lista puede ser de cualquier elemento