{"id":4712,"date":"2019-02-15T06:00:56","date_gmt":"2019-02-15T04:00:56","guid":{"rendered":"http:\/\/www.glc.us.es\/~jalonso\/exercitium\/?p=4712"},"modified":"2019-02-22T08:31:38","modified_gmt":"2019-02-22T06:31:38","slug":"sucesion-de-cantor-de-numeros-innombrables","status":"publish","type":"post","link":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/sucesion-de-cantor-de-numeros-innombrables\/","title":{"rendered":"Sucesi\u00f3n de Cantor de n\u00fameros innombrables"},"content":{"rendered":"<p>Un n\u00famero es <strong>innombrable<\/strong> si es divisible por 7 o alguno de sus d\u00edgitos es un 7. Un juego infantil consiste en contar salt\u00e1ndose los n\u00fameros innombrables:<\/p>\n<pre lang=\"text\"> \n   1 2 3 4 5 6 ( ) 8 9 10 11 12 13 ( ) 15 16 ( ) 18 ...\n<\/pre>\n<p>La sucesi\u00f3n de Cantor se obtiene llenando los huecos de la sucesi\u00f3n anterior:<\/p>\n<pre lang=\"text\"> \n  1 2 3 4 5 6 (1) 8 9 10 11 12 13 (2) 15 16 (3) 18 19 20 (4) 22 23\n  24 25 26 (5) (6) 29 30 31 32 33 34 (1) 36 (8) 38 39 40 41  (9) 43\n  44 45 46 (10) 48 (11) 50 51 52 53 54 55 (12) (13) 58 59 60 61 62\n  (2) 64 65 66 (15) 68 69 (16) (3) (18) (19) (20) (4) (22) (23) (24)\n  (25) 80 81 82 83 (26) 85 86 (5) 88 89 90 (6) 92 93 94 95 96 (29)\n  (30) 99 100\n<\/pre>\n<p>Definir las funciones<\/p>\n<pre lang=\"text\"> \n   sucCantor        :: [Integer]\n   graficaSucCantor :: Int -> IO ()\n<\/pre>\n<p>tales que<\/p>\n<ul>\n<li>sucCantor es la lista cuyos elementos son los t\u00e9rminos de la sucesi\u00f3n de Cantor. Por ejemplo, <\/li>\n<\/ul>\n<pre lang=\"text\">   \n     \u03bb> take 100 sucCantor\n     [1,2,3,4,5,6, 1 ,8,9,10,11,12,13, 2, 15,16, 3, 18,19,20, 4,\n      22,23,24,25,26, 5 , 6 ,29,30,31,32,33,34, 1 ,36 , 8 ,38,39,\n      40,41, 9 ,43,44,45,46, 10 ,48, 11 ,50,51,52,53,54,55 , 12 ,\n      13, 58,59,60,61,62, 2 ,64,65,66, 15 ,68,69, 16 , 3 , 18, 19,\n      20, 4, 22, 23, 24 ,25 ,80,81,82,83, 26 ,85,86, 5 ,88,89,90,\n      6, 92,93,94,95,96, 29, 30 ,99,100]\n     \u03bb> sucCantor2 !! (5+10^6)\n     544480\n     \u03bb> sucCantor2 !! (6+10^6)\n     266086\n<\/pre>\n<ul>\n<li>(graficaSucCantor n) es la gr\u00e1fica de los n primeros t\u00e9rminos de la sucesi\u00f3n de Cantor. Por ejemplo, (graficaSucCantor 200) dibuja<\/li>\n<\/ul>\n<p><a href=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2019\/02\/Sucesion_de_Cantor_de_numeros_innombrables.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2019\/02\/Sucesion_de_Cantor_de_numeros_innombrables.png?resize=640%2C480\" alt=\"\" width=\"640\" height=\"480\" class=\"aligncenter size-full wp-image-4715\" srcset=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2019\/02\/Sucesion_de_Cantor_de_numeros_innombrables.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2019\/02\/Sucesion_de_Cantor_de_numeros_innombrables.png?resize=300%2C225&amp;ssl=1 300w\" sizes=\"(max-width: 640px) 100vw, 640px\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<h4>Soluciones<\/h4>\n<pre lang=\"haskell\">\nimport Graphics.Gnuplot.Simple\n\n-- 1\u00aa soluci\u00f3n\n-- ===========\n\nsucCantor1 :: [Integer]\nsucCantor1 = map fst $ scanl f (1,0) [2..]\n  where f (a,i) x\n          | esInnombrable x = (sucCantor1 !! i, i+1)\n          | otherwise       = (x,i)\n\nesInnombrable :: Integer -> Bool\nesInnombrable x =\n  rem x 7 == 0 || '7' `elem` show x\n\n-- 2\u00aa soluci\u00f3n\n-- ===========\n\nsucCantor2 :: [Integer]\nsucCantor2 = aux 0 1\n  where aux i x\n          | esInnombrable x = sucCantor2 !! i : aux (i+1) (x+1)\n          | otherwise       = x : aux i (x+1) \n\n-- 3\u00aa soluci\u00f3n\n-- ===========\n\nsucCantor3 :: [Integer]\nsucCantor3 = 1 : aux [2..] sucCantor3\n  where aux [] _ = []\n        aux (x:xs) a@(y:ys)\n          | esInnombrable x = y : aux xs ys\n          | otherwise       = x : aux xs a\n\n-- Definici\u00f3n de graficaSucCantor\n-- ========================================\n\ngraficaSucCantor :: Int -> IO ()\ngraficaSucCantor n =\n  plotList [ Key Nothing\n           , PNG (\"Sucesion_de_Cantor_de_numeros_innombrables.png\")\n           ]\n           (take n sucCantor3)\n<\/pre>\n<h4>Pensamiento<\/h4>\n<blockquote><p>\nDices que nada se pierde<br \/>\ny acaso dices verdad;<br \/>\npero todo lo perdemos<br \/>\ny todo nos perder\u00e1.<\/p>\n<p>Antonio Machado\n<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Un n\u00famero es innombrable si es divisible por 7 o alguno de sus d\u00edgitos es un 7. Un juego infantil consiste en contar salt\u00e1ndose los n\u00fameros innombrables: 1 2 3 4 5 6 ( ) 8 9 10 11 12 13 ( ) 15 16 ( ) 18 &#8230; La sucesi\u00f3n de Cantor se obtiene&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","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":[4],"tags":[26,80,376,10,11,309,6,31,78,33,47],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/4712"}],"collection":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/comments?post=4712"}],"version-history":[{"count":5,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/4712\/revisions"}],"predecessor-version":[{"id":4759,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/4712\/revisions\/4759"}],"wp:attachment":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/media?parent=4712"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/categories?post=4712"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/tags?post=4712"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}