Solución final del ejercicio 3