Prueba 2018 ejercicio 10

Prueba 2018 ejercicio 10

de Lucas Lazogue Paez -
Número de respuestas: 3

Buenas, estoy teniendo una duda con este ejercicio, en particular con el resultado de evaluar a


Entiendo que b = [1,2,3,4...] 

pero porqué a = [[1,1,1,1...]]? no debería dar [[1,2,3...], [1,2,3,...],...]?

Gracias!

En respuesta a Lucas Lazogue Paez

Re: Prueba 2018 ejercicio 10

de Valentina Pereira Ciaffone -
Buenas, no soy profesora pero ya hice ese ejercicio y capaz ayudo.
La lista a no es repeat 1 ni tampoco la que pusiste ahí.
Yo lo razoné así:
a = map repeat b y b = [1,2,3,4,..]
a = map repeat [1,2,3,4,..] = [repeat 1 : repeat 2 : repeat 3 : repeat 4 ...] (= [[1,1,...], [2,2,...], ...])
Entonces, aplicándolo a las preguntas (a) y (d) que son en las que aparece "a":
- take 8 a = take 8 [repeat 1 : repeat 2 : repeat 3 : repeat 4 ...] = repeat 1 : take (8-1) [repeat 2 : repeat 3 : repeat 4 ...] --> Diverge
- (take 8 . head) a = (take 8 . head) [repeat 1 : repeat 2 : repeat 3 : repeat 4 ...] = take 8 (repeat 1) = take 8 [1,1,1,1,...] = [1,1,1,1,1,1,1,1]