{"id":3556,"date":"2017-12-26T06:00:45","date_gmt":"2017-12-26T04:00:45","guid":{"rendered":"http:\/\/www.glc.us.es\/~jalonso\/exercitium\/?p=3556"},"modified":"2018-02-19T08:43:07","modified_gmt":"2018-02-19T06:43:07","slug":"sucesion-de-raices-enteras-de-los-numeros-primos","status":"publish","type":"post","link":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/sucesion-de-raices-enteras-de-los-numeros-primos\/","title":{"rendered":"Sucesi\u00f3n de ra\u00edces enteras de los n\u00fameros primos"},"content":{"rendered":"<p>Definir las siguientes funciones<\/p>\n<pre lang=\"text\">\n   raicesEnterasPrimos :: [Integer]\n   posiciones :: Integer -> (Int,Int)\n   frecuencia :: Integer -> Int\n   grafica_raicesEnterasPrimos :: Int -> IO ()\n   grafica_posicionesIniciales :: Integer -> IO ()\n   grafica_frecuencias :: Integer -> IO ()\n<\/pre>\n<p>tales que<\/p>\n<ul>\n<li>raicesEnterasPrimos es la sucesi\u00f3n de las ra\u00edces enteras (por defecto) de los n\u00fameros primos. Por ejemplo,<\/li>\n<\/ul>\n<pre lang=\"text\">\n     \u03bb> take 20 raicesEnterasPrimos\n     [1,1,2,2,3,3,4,4,4,5,5,6,6,6,6,7,7,7,8,8]\n     \u03bb> raicesEnterasPrimos !! 2500000\n     6415\n<\/pre>\n<ul>\n<li><code>(posiciones x)<\/code> es el par formado por la menor y la mayor posici\u00f3n de x en la sucesi\u00f3n de las ra\u00edces enteras de los n\u00fameros primos. Por ejemplo,<\/li>\n<\/ul>\n<pre lang=\"text\">\n      posiciones 2     ==  (2,3)\n      posiciones 4     ==  (6,8)\n      posiciones 2017  ==  (287671,287931)\n      posiciones 2018  ==  (287932,288208)\n<\/pre>\n<ul>\n<li><code>(frecuencia x)<\/code> es el n\u00famero de veces que aparece x en la sucesi\u00f3n de las ra\u00edces enteras de los n\u00fameros primos. Por ejemplo,<\/li>\n<\/ul>\n<pre lang=\"text\">\n      frecuencia 2     ==  2\n      frecuencia 4     ==  3\n      frecuencia 2017  ==  261\n      frecuencia 2018  ==  277\n<\/pre>\n<ul>\n<li><code>(grafica_raicesEnterasPrimos n)<\/code> dibuja la gr\u00e1fica de los n primeros t\u00e9rminos de la sucesi\u00f3n de las ra\u00edces enteras de los n\u00fameros primos. Por ejemplo, <code>(grafica_raicesEnterasPrimos 200)<\/code> dibuja<br \/>\n <a href=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_1.png?resize=640%2C480\" alt=\"Sucesion_de_raices_enteras_de_primos_1\" width=\"640\" height=\"480\" class=\"aligncenter size-full wp-image-3557\" srcset=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_1.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_1.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_1.png?resize=100%2C75&amp;ssl=1 100w, https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_1.png?resize=150%2C112&amp;ssl=1 150w\" sizes=\"(max-width: 640px) 100vw, 640px\" data-recalc-dims=\"1\" \/><\/a><\/li>\n<li><code>(grafica_posicionesIniciales n)<\/code> dibuja la gr\u00e1fica de las menores posiciones de los n primeros n\u00fameros en la sucesi\u00f3n de las ra\u00edces enteras de los n\u00fameros primos. Por ejemplo, <code>(grafica_posicionesIniciales 200)<\/code> dibuja<br \/>\n<a href=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_2.png?resize=640%2C480\" alt=\"Sucesion_de_raices_enteras_de_primos_2\" width=\"640\" height=\"480\" class=\"aligncenter size-full wp-image-3558\" srcset=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_2.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_2.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_2.png?resize=100%2C75&amp;ssl=1 100w, https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_2.png?resize=150%2C112&amp;ssl=1 150w\" sizes=\"(max-width: 640px) 100vw, 640px\" data-recalc-dims=\"1\" \/><\/a> <\/li>\n<li><code>(grafica_frecuencia n)<\/code> dibuja la gr\u00e1fica de las frecuencia de los n primeros n\u00fameros en la sucesi\u00f3n de las ra\u00edces enteras de los n\u00fameros primos. Por ejemplo, <code>(grafica_frecuencia 200)<\/code> dibuja<br \/>\n<a href=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_3.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_3.png?resize=640%2C480\" alt=\"Sucesion_de_raices_enteras_de_primos_3\" width=\"640\" height=\"480\" class=\"aligncenter size-full wp-image-3559\" srcset=\"https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_3.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_3.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_3.png?resize=100%2C75&amp;ssl=1 100w, https:\/\/i0.wp.com\/www.glc.us.es\/~jalonso\/exercitium\/wp-content\/uploads\/2017\/12\/Sucesion_de_raices_enteras_de_primos_3.png?resize=150%2C112&amp;ssl=1 150w\" sizes=\"(max-width: 640px) 100vw, 640px\" data-recalc-dims=\"1\" \/><\/a><\/li>\n<\/ul>\n<h4>Soluciones<\/h4>\n<pre lang=\"haskell\">\nimport Data.Numbers.Primes (primes)\nimport Graphics.Gnuplot.Simple\n\nraicesEnterasPrimos :: [Integer]\nraicesEnterasPrimos = map raizEntera primes                       \n\nraizEntera :: Integer -> Integer\nraizEntera = floor . sqrt . fromIntegral\n\nposiciones :: Integer -> (Int,Int)\nposiciones x = (n,n+m-1)\n  where (as,bs) = span (<x) raicesEnterasPrimos\n        cs      = takeWhile (==x) bs \n        n       = length as\n        m       = length cs\n\nfrecuencia :: Integer -> Int\nfrecuencia x =\n  ( length\n  . takeWhile (==x)\n  . dropWhile (<x)\n  ) raicesEnterasPrimos\n\ngrafica_raicesEnterasPrimos :: Int -> IO ()\ngrafica_raicesEnterasPrimos n = \n  plotList [ Title \"Raices enteras de primos\"\n           , XLabel \"Posiciones de numeros primos\"\n           , YLabel \"Raiz entera del n-esimo primo\"\n           , Key Nothing\n           , PNG \"Sucesion_de_raices_enteras_de_primos_1.png\"\n           ]\n           (take n raicesEnterasPrimos)\n\ngrafica_posicionesIniciales :: Integer -> IO ()\ngrafica_posicionesIniciales n = \n  plotList [ Title \"Posiciones iniciales en raices enteras de primos\"\n           , XLabel \"Numeros enteros\"\n           , YLabel \"Posicion del numero n en las raices enteras de primos\"\n           , Key Nothing\n           , PNG \"Sucesion_de_raices_enteras_de_primos_2.png\"\n           ]\n           (map (fst . posiciones) [1..n])\n\ngrafica_frecuencias :: Integer -> IO ()\ngrafica_frecuencias n = \n  plotList [ Title \"Frecuencias en raices enteras de primos\"\n           , XLabel \"Numeros enteros n\"\n           , YLabel \"Frecuencia del numero n en las raices enteras de primos\"\n           , Key Nothing\n           , PNG \"Sucesion_de_raices_enteras_de_primos_3.png\"\n           ]\n           (map frecuencia [1..n])\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Definir las siguientes funciones raicesEnterasPrimos :: [Integer] posiciones :: Integer -> (Int,Int) frecuencia :: Integer -> Int grafica_raicesEnterasPrimos :: Int -> IO () grafica_posicionesIniciales :: Integer -> IO () grafica_frecuencias :: Integer -> IO () tales que raicesEnterasPrimos es la sucesi\u00f3n de las ra\u00edces enteras (por defecto) de los n\u00fameros primos. Por ejemplo, \u03bb> take&#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":[59,282,183,80,28,10,11,309,173,60,236,47,34],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/3556"}],"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=3556"}],"version-history":[{"count":4,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/3556\/revisions"}],"predecessor-version":[{"id":3796,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/3556\/revisions\/3796"}],"wp:attachment":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/media?parent=3556"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/categories?post=3556"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/tags?post=3556"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}