Ayuda por favor!
Tengo que hacer una práctica para la universidad de un programilla bastante fácil pero es que no entiendo el enunciado muy bien:
Dada la especificación de los siguientes dominios:
Fecha = Tupla (|N+,|N+,|N+)
IntervaloFechas = Tupla (Fecha,Fecha)
Intervalos = Colección (IntervaloFechas)
y dada la especificación de la siguiente función:
FUNCIÓN NoSolapados (colI : Intervalos;
i : IntervaloFechas) --> Intervalos
PRE: Se cumple el INV (IntervaloFechas) para "i" y todos los intervalos de "colI".
Se cumple INV (Fecha) para todas las fechas, tanto de "i"
como de todos los intervalos de "colI".
POST: resultado es la colección de todos los intervalos de "colI" que no se solapan con "i".
Se entiende que dos intervalos de fechas no se solapan si no tienen ninguna fecha común.
Se pide, redactar en Ada la función "NoSolapados" junto con las funciones auxiliares:
"EsAnterior", "Pertenece", y "EstanSolapados". Dichas funciones hay que resolverlas en el archivo
"Prac11.hs" que sirve de plantilla.
Y esa plantilla es esta:
-- Definición de tipos
type TipoFecha = (Int,Int,Int)
type TipoIntervaloFechas = (TipoFecha,TipoFecha)
type TipoIntervalos = [TipoIntervaloFechas]
----------------------------------------------------------
fEsAnterior :: (TipoFecha, TipoFecha) -> Bool
-----Código de la solución
fPertenece :: (TipoFecha, TipoIntervaloFechas) -> Bool
-----Código de la solución
fEstanSolapados :: (TipoIntervaloFechas, TipoIntervaloFechas) -> Bool
-----Código de la solución
fNoSolapados :: (TipoIntervalos,TipoIntervaloFechas) -> TipoIntervalos
-----Código de la solución
Dada la especificación de los siguientes dominios:
Fecha = Tupla (|N+,|N+,|N+)
IntervaloFechas = Tupla (Fecha,Fecha)
Intervalos = Colección (IntervaloFechas)
y dada la especificación de la siguiente función:
FUNCIÓN NoSolapados (colI : Intervalos;
i : IntervaloFechas) --> Intervalos
PRE: Se cumple el INV (IntervaloFechas) para "i" y todos los intervalos de "colI".
Se cumple INV (Fecha) para todas las fechas, tanto de "i"
como de todos los intervalos de "colI".
POST: resultado es la colección de todos los intervalos de "colI" que no se solapan con "i".
Se entiende que dos intervalos de fechas no se solapan si no tienen ninguna fecha común.
Se pide, redactar en Ada la función "NoSolapados" junto con las funciones auxiliares:
"EsAnterior", "Pertenece", y "EstanSolapados". Dichas funciones hay que resolverlas en el archivo
"Prac11.hs" que sirve de plantilla.
Y esa plantilla es esta:
-- Definición de tipos
type TipoFecha = (Int,Int,Int)
type TipoIntervaloFechas = (TipoFecha,TipoFecha)
type TipoIntervalos = [TipoIntervaloFechas]
----------------------------------------------------------
fEsAnterior :: (TipoFecha, TipoFecha) -> Bool
-----Código de la solución
fPertenece :: (TipoFecha, TipoIntervaloFechas) -> Bool
-----Código de la solución
fEstanSolapados :: (TipoIntervaloFechas, TipoIntervaloFechas) -> Bool
-----Código de la solución
fNoSolapados :: (TipoIntervalos,TipoIntervaloFechas) -> TipoIntervalos
-----Código de la solución