Está en la página 1de 1

Profesorado de Informática - Ciencias de la Computación - INET – DFPD

Matemática Discreta usando el computador 2010 (Matemática I)

Práctico 8
Soluciones a algunos ejercicios, aportadas por estudiantes del curso.
Es sólo una forma de resolverlo. Las sóluciones no son únicas, en general.
La mejor solución de todas, aún está por escribirse......

--- LISTAS Práctico 8 ejercicios 5 d,e

j = [0,2,4,6,8,119] --- esta es una lista para probar las funciones.

tomarn :: Integer -> [Integer] -> [Integer]


tomarn _ [ ] = [ ]
tomarn 0 (a) = [ ]
tomarn n (a:xs) = a:tomarn (n-1) (xs)

borrarn :: Integer -> [Integer] -> [Integer]


borrarn _ [ ] = [ ]
borrarn 0 (a) = (a)
borrarn n (a:xs) = borrarn (n-1) (xs)

--- Se agradece a los estudiantes Diego Carreres y Andres Berni por estas resoluciones.
-------------------------------------------------------------------------------------------------------------

-- Práctico 8 ejercicio 8
-- Dada una lista de pares ordenados de enteros, crear una lista con el primero de cada par.

pares :: [ ( Integer , Integer ) ] -> [Integer ]


pares [ ] = [ ]
pares [ (a,b) ] = [a]
pares ( (a,b):xs ) = a:pares (xs)

--- Practico 8 ejercicio 9:


--- Dada una lista de pares ordenados de enteros, devolver una lista con el mayor de cada par.

paresmayor :: [ ( Integer , Integer ) ]  -> [Integer ]


paresmayor [ ] = [ ]
paresmayor [ (a,b) ] = if a>b then [a] else [b]
paresmayor (  (a,b):xs  ) =  if a>b then (a:paresmayor (xs)) else (b:paresmayor(xs)) 

m = [(5,3),(4,6),(8,3)] ---- lista para probar la función.


w = [(3,33),(4,44),(5,55)] ---- lista para probar la función.
j=[(5,3)] ---- lista para probar la función.

-- Se agradece al estudiante Hugo Rodriguez por la resolución de estos ejercicios.

-------------------------------------------------------------------------------------------------------------

Profesores: Germán Ferrari y Saúl Tenembaum 1


http://matematicagerman.blogspot.com/ - http://www.x.edu.uy/inet.htm

También podría gustarte