Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
766 B
1
Indexable
Never
calificaciones :: [String] -> [Int]
calificaciones listaAlumnos = eliminaRepetidos califs
  where
    califs = mapea obtenerCalificaciones aprobadosYReprobados
    aprobadosYReprobados = interseccionListas aprobados reprobados
    aprobados = unionListas aprobados1 aprobados2
    reprobados = unionListas reprobados1 reprobados2
    aprobados1 = mapea (filtra (\(_, calif) -> calif > 6)) listaAlumnos
    aprobados2 = mapea (filtra (\(_, calif) -> calif == 6)) listaAlumnos
    reprobados1 = mapea (filtra (\(_, calif) -> calif < 6)) listaAlumnos
    reprobados2 = mapea (filtra (\(_, calif) -> calif == 6)) listaAlumnos
    obtenerCalificaciones = mapea (\(_, calif) -> calif)
    eliminaRepetidos = foldr (\x xs -> if x `elem` xs then xs else x:xs) []