{"id":6260,"date":"2018-10-10T21:11:13","date_gmt":"2018-10-10T19:11:13","guid":{"rendered":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/?p=6260"},"modified":"2018-10-11T21:12:24","modified_gmt":"2018-10-11T19:12:24","slug":"i1m2018-ejercicios-de-definiciones-por-composicion-sobre-numeros-y-listas-2","status":"publish","type":"post","link":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/i1m2018-ejercicios-de-definiciones-por-composicion-sobre-numeros-y-listas-2\/","title":{"rendered":"I1M2018: Ejercicios de definiciones por composici\u00f3n sobre n\u00fameros y listas (2)"},"content":{"rendered":"<p>En la segunda parte de la clase de hoy del curso de <a href=\"http:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-18\">Inform\u00e1tica de 1\u00ba del Grado en Matem\u00e1ticas<\/a> hemos comentado soluciones de ejercicios de la 1\u00aa relaci\u00f3n sobre definiciones por composici\u00f3n de funciones sobre n\u00fameros, listas y booleanos.<\/p>\n<p>Los ejercicios y su soluci\u00f3n se muestran a continuaci\u00f3n<br \/>\n<!--more--><\/p>\n<pre lang=\"haskell\">\n-- ---------------------------------------------------------------------\n-- Ejercicio 9. Definir la funci\u00f3n rango tal que (rango xs) es la\n-- lista formada por el menor y mayor elemento de xs.\n--    rango [3,2,7,5]  ==  [2,7]\n-- Indicaci\u00f3n: Se pueden usar minimum y maximum.\n-- ---------------------------------------------------------------------\n\nrango xs = [minimum xs, maximum xs]\n\n-- ---------------------------------------------------------------------\n-- Ejercicio 10. Definir la funci\u00f3n palindromo tal que (palindromo xs) se\n-- verifica si xs es un pal\u00edndromo; es decir, es lo mismo leer xs de\n-- izquierda a derecha que de derecha a izquierda. Por ejemplo,\n--    palindromo [3,2,5,2,3]    ==  True\n--    palindromo [3,2,5,6,2,3]  ==  False\n-- ---------------------------------------------------------------------\n\npalindromo xs = xs == reverse xs\n\n-- ---------------------------------------------------------------------\n-- Ejercicio 11. Definir la funci\u00f3n interior tal que (interior xs) es la\n-- lista obtenida eliminando los extremos de la lista xs. Por ejemplo,\n--    interior [2,5,3,7,3]  ==  [5,3,7]\n--    interior [2..7]       ==  [3,4,5,6]\n-- ---------------------------------------------------------------------\n\ninterior xs = tail (init xs)\n\n-- ---------------------------------------------------------------------\n-- Ejercicio 12. Definir la funci\u00f3n finales tal que (finales n xs) es la\n-- lista formada por los n finales elementos de xs. Por ejemplo,\n--    finales 3 [2,5,4,7,9,6]  ==  [7,9,6]\n-- ---------------------------------------------------------------------\n\nfinales n xs = drop (length xs - n) xs \n \n-- ---------------------------------------------------------------------\n-- Ejercicio 13. Definir la funci\u00f3n segmento tal que (segmento m n xs) es\n-- la lista de los elementos de xs comprendidos entre las posiciones m y\n-- n. Por ejemplo,\n--    segmento 3 4 [3,4,1,2,7,9,0]  ==  [1,2]\n--    segmento 3 5 [3,4,1,2,7,9,0]  ==  [1,2,7]\n--    segmento 5 3 [3,4,1,2,7,9,0]  ==  []\n-- ---------------------------------------------------------------------\n\nsegmento m n xs = drop (m-1) (take n xs)\n \n-- ---------------------------------------------------------------------\n-- Ejercicio 14. Definir la funci\u00f3n extremos tal que (extremos n xs) es\n-- la lista formada por los n primeros elementos de xs y los n finales\n-- elementos de xs. Por ejemplo, \n--    extremos 3 [2,6,7,1,2,4,5,8,9,2,3]  ==  [2,6,7,9,2,3]\n-- ---------------------------------------------------------------------\n\nextremos n xs = take n xs ++ drop (length xs - n) xs\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>En la segunda parte de la clase de hoy del curso de Inform\u00e1tica de 1\u00ba del Grado en Matem\u00e1ticas hemos comentado soluciones de ejercicios de la 1\u00aa relaci\u00f3n sobre definiciones por composici\u00f3n de funciones sobre n\u00fameros, listas y booleanos. Los ejercicios y su soluci\u00f3n se muestran a continuaci\u00f3n<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"footnotes":"","_jetpack_memberships_contains_paid_content":false},"categories":[320],"tags":[270,321],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_likes_enabled":false,"_links":{"self":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts\/6260"}],"collection":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/comments?post=6260"}],"version-history":[{"count":1,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts\/6260\/revisions"}],"predecessor-version":[{"id":6261,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts\/6260\/revisions\/6261"}],"wp:attachment":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/media?parent=6260"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/categories?post=6260"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/tags?post=6260"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}