{"id":2354,"date":"2012-11-27T16:04:25","date_gmt":"2012-11-27T16:04:25","guid":{"rendered":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/?p=2354"},"modified":"2013-03-08T05:47:38","modified_gmt":"2013-03-08T05:47:38","slug":"i1m2012-sumas-de-factoriales-que-dan-cuadrados-perfectos","status":"publish","type":"post","link":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/i1m2012-sumas-de-factoriales-que-dan-cuadrados-perfectos\/","title":{"rendered":"I1M2012: Sumas de factoriales que dan cuadrados perfectos"},"content":{"rendered":"<p>En la primera parte de la clase de hoy de <a href=\"http:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-12\">Inform\u00e1tica de 1\u00ba del Grado en Matem\u00e1ticas<\/a> hemos comentado la soluci\u00f3n con Haskell de un problema propuesto en la revista <i>Mathematics Magazine<\/i>. Su enunciado es<\/p>\n<blockquote><p>\nEncontrar todos los enteros positivos m y n para los que se<br \/>\ncumpla que: <img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=1%21%2B2%21%2B3%21%2B+%5Cdots+%2Bn%21%3Dm%5E2&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"1!+2!+3!+ &#92;dots +n!=m^2\" class=\"latex\" \/>.\n<\/p><\/blockquote>\n<p>Su traducci\u00f3n directa es<\/p>\n<pre lang=\"haskell\"> \r\nsol :: [(Integer,Integer)]\r\nsol = [(n,m) | n <- [1..], m <- [sumaFactoriales n], esCuadrado m]\r\n<\/pre>\n<p>o, usando let,<\/p>\n<pre lang=\"haskell\"> \r\nsol' :: [(Integer,Integer)]\r\nsol' = [(n,m) | n <- [1..], let m = sumaFactoriales n, esCuadrado m]\r\n<\/pre>\n<p>donde <\/p>\n<ul>\n<li> (sumaFactoriales n) es la suma de los factoriales de 1 a n\n<pre lang=\"haskell\"> \r\nsumaFactoriales :: Integer -> Integer\r\nsumaFactoriales n = sum [factorial x | x <- [1..n]]\r\n<\/pre>\n<li> (factorial n) es el factorial de n.\n<pre lang=\"haskell\"> \r\nfactorial :: Integer -> Integer\r\nfactorial n = product [1..n]\r\n<\/pre>\n<li> (esCuadrado x) se verifica si x es un cuadrado perfecto.\n<pre lang=\"haskell\"> \r\nesCuadrado :: Integer -> Bool\r\nesCuadrado x = x == y*y\r\n    where y = floor (sqrt (fromIntegral x))\r\n<\/pre>\n<\/ul>\n<p>Con esta definici\u00f3n se encuentran las siguientes soluciones<\/p>\n<pre lang=\"shell\"> \r\nghci> sol\r\n[(1,1),(3,9)  \r\nC-c C-c\r\nInterrupted.\r\n<\/pre>\n<p>Se observa que despu\u00e9s de calcular las dos primeras sigue buscando por lo que hay que terminar el c\u00e1lculo (con C-c C-c) sin encontrar m\u00e1s soluciones. <\/p>\n<p>Que las dos primeras son soluciones se comprueba f\u00e1cilmente: <\/p>\n<ul>\n<li><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=1%21+%3D+1+%3D+1%5E2&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"1! = 1 = 1^2\" class=\"latex\" \/>\n<li><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=1%21%2B2%21%2B3%21+%3D+9+%3D+3%5E2&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"1!+2!+3! = 9 = 3^2\" class=\"latex\" \/>.\n<\/ul>\n<p>Vamos a investigar porqu\u00e9 no hay m\u00e1s soluciones. Para ello, empezamos calculando las sumas de los factoriales<\/p>\n<pre lang=\"shell\"> \r\nghci> [sumaFactoriales n | n <- [1..10]]\r\n[1,3,9,33,153,873,5913,46233,409113,4037913]\r\n<\/pre>\n<p>Se observa que, a partir de la cuarta, todas terminan en 3. Por otra parte, calculando los cuadrados de los d\u00edgitos<\/p>\n<pre lang=\"shell\"> \r\nghci> [x^2 | x <- [0..9]]\r\n[0,1,4,9,16,25,36,49,64,81]\r\n<\/pre>\n<p>se observa que ninguno termina en 3; es decir, ning\u00fan cuadrado perfecto temina en 3.<\/p>\n<p>Para terminar, nos falta demostrar la conjetura anterior (si n>3, entonces <img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=1%21%2B2%21%2B3%21%2B+%5Cdots+%2Bn%21&#038;bg=ffffff&#038;fg=000&#038;s=0&#038;c=20201002\" alt=\"1!+2!+3!+ &#92;dots +n!\" class=\"latex\" \/> termina en 3). Para ello calculamos los primeros factoriales<\/p>\n<pre lang=\"shell\"> \r\nghci> [factorial n | n <- [1..10]]\r\n[1,2,6,24,120,720,5040,40320,362880,3628800]\r\n<\/pre>\n<p>Se observa que para n=4 termina en 3 (es 1+2+6+24=33) y que, para n>4, el \u00faltimo d\u00edgito de n! es 0 (que es f\u00e1cil de demostrar ya que si n>4, entre los factores de n est\u00e1n el 2 y el 5).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>En la primera parte de la clase de hoy de Inform\u00e1tica de 1\u00ba del Grado en Matem\u00e1ticas hemos comentado la soluci\u00f3n con Haskell de un problema propuesto en la revista Mathematics Magazine. Su enunciado es Encontrar todos los enteros positivos m y n para los que se cumpla que: . Su traducci\u00f3n directa es sol&#8230;<\/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":[1],"tags":[270,298],"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\/2354"}],"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=2354"}],"version-history":[{"count":11,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts\/2354\/revisions"}],"predecessor-version":[{"id":2739,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts\/2354\/revisions\/2739"}],"wp:attachment":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/media?parent=2354"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/categories?post=2354"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/tags?post=2354"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}