UTNianos

Versión completa: [PDEP]6. Práctica Aplicación Parcial y Orden Superior 2. esBisiesto
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Definir la función esBisiesto/1, que indica si un año es bisiesto.
Un año es bisiesto si:
es divisible por 400, o bien
es divisible por 4 pero no es divisible por 100
Nota: Resolverlo reutilizando la función esMultiploDe/2, que dice si el primer argumento es multiplo del segundo. Asumir que esta función existe.
Además, utilizar composición y aplicació parcial.



La función esBisiesto la resolvi de esta forma: esBisiesto anio = (esMultiplo anio 400) || ((esMultiploDe anio 4)&& (not(esMultiploDe anio 100)))
Ahora el problema es que no se como declararla como función compuesta aplicándola parcialmente.
Al ser anio el primer parámetro de la función esMultiploDe no se como componerlo aplicando parcialmente.
Si hago esMultiploDe 400 y espero "anio" aplicándolo parcialmente, va a tomar como primer parámetro el 400 y no va a dar el resultado esperado.
Alguna ayuda?
La función se aplica parcialmente esperando el valor 100 (no hacia falta hacerlo con el valor de la variable anio)

esBisiesto anio = (((esMultiploDe anio 400)||).(esMultiploDe anio 4 &&).not.(esMultiploDe anio)) 100
(07-06-2017 16:41)CDNievas escribió: [ -> ]La función se aplica parcialmente esperando el valor 100 (no hacia falta hacerlo con el valor de la variable anio)

esBisiesto anio = (((esMultiploDe anio 400)||).(esMultiploDe anio 4 &&).not.(esMultiploDe anio)) 100

Genio!
URLs de referencia