{"id":2051,"date":"2012-09-16T21:23:48","date_gmt":"2012-09-16T19:23:48","guid":{"rendered":"http:\/\/www.palentino.es\/blog\/?p=2051"},"modified":"2012-09-16T21:30:46","modified_gmt":"2012-09-16T19:30:46","slug":"el-triangulo-de-floyd-y-un-ejemplo-en-c","status":"publish","type":"post","link":"https:\/\/www.palentino.es\/blog\/el-triangulo-de-floyd-y-un-ejemplo-en-c\/","title":{"rendered":"El tri\u00e1ngulo de Floyd y un ejemplo en C"},"content":{"rendered":"<p style=\"text-align: justify;\">El\u00a0<strong>Tri\u00e1ngulo de Floyd<\/strong>, llamado as\u00ed en honor a\u00a0<a title=\"Robert Floyd\" href=\"http:\/\/es.wikipedia.org\/wiki\/Robert_Floyd\">Robert Floyd<\/a>, es un\u00a0<a title=\"Tri\u00e1ngulo rect\u00e1ngulo\" href=\"http:\/\/es.wikipedia.org\/wiki\/Tri%C3%A1ngulo_rect%C3%A1ngulo\">tri\u00e1ngulo rect\u00e1ngulo<\/a>\u00a0formado con\u00a0<a title=\"N\u00famero natural\" href=\"http:\/\/es.wikipedia.org\/wiki\/N%C3%BAmero_natural\">n\u00fameros naturales<\/a>.<\/p>\n<p style=\"text-align: justify;\"><strong>Robert W. Floyd<\/strong>\u00a0\u00a0fue un prominente cient\u00edfico\u00a0estadounidense\u00a0en\u00a0inform\u00e1tica. Recibi\u00f3 el\u00a0<a title=\"Premio Turing\" href=\"http:\/\/es.wikipedia.org\/wiki\/Premio_Turing\">Premio Turing<\/a>\u00a0de la\u00a0<a title=\"Association for Computing Machinery\" href=\"http:\/\/es.wikipedia.org\/wiki\/Association_for_Computing_Machinery\">ACM<\/a>\u00a0en\u00a01978\u00a0\u00abpor tener una clara influencia en las metodolog\u00edas para la creaci\u00f3n de software eficiente y confiable, y por haber contribuido a la fundaci\u00f3n de las sub\u00e1reas teor\u00eda del reconocimiento de frases, sem\u00e1ntica de los lenguajes de programaci\u00f3n, verificaci\u00f3n automatizada de programas, s\u00edntesis automatizada de programas y an\u00e1lisis de algoritmos\u00bb<\/p>\n<p style=\"text-align: justify;\">Para crear un tri\u00e1ngulo de Floyd, se comienza con un 1 en la esquina superior izquierda, y se contin\u00faa escribiendo la secuencia de los n\u00fameros naturales de manera que cada l\u00ednea contenga un n\u00famero m\u00e1s que la anterior:<\/p>\n<p style=\"text-align: justify;\"><!--more--><\/p>\n<table width=\"120px;\" align=\"center\">\n<tbody>\n<tr align=\"center\" bgcolor=\"#F8F8F8\">\n<td><strong><span style=\"color: #000080;\">1<\/span><\/strong><\/td>\n<\/tr>\n<tr align=\"center\" bgcolor=\"#F8F8F8\">\n<td><strong><span style=\"color: #000080;\">2<\/span><\/strong><\/td>\n<td><strong><span style=\"color: #000080;\">3<\/span><\/strong><\/td>\n<\/tr>\n<tr align=\"center\" bgcolor=\"#F8F8F8\">\n<td><strong><span style=\"color: #000080;\">4<\/span><\/strong><\/td>\n<td><strong><span style=\"color: #000080;\">5<\/span><\/strong><\/td>\n<td><strong><span style=\"color: #000080;\">6<\/span><\/strong><\/td>\n<\/tr>\n<tr align=\"center\" bgcolor=\"#F8F8F8\">\n<td><strong><span style=\"color: #000080;\">7<\/span><\/strong><\/td>\n<td><strong><span style=\"color: #000080;\">8<\/span><\/strong><\/td>\n<td><strong><span style=\"color: #000080;\">9<\/span><\/strong><\/td>\n<td><strong><span style=\"color: #000080;\">10<\/span><\/strong><\/td>\n<\/tr>\n<tr align=\"center\" bgcolor=\"#F8F8F8\">\n<td><strong><span style=\"color: #000080;\">11<\/span><\/strong><\/td>\n<td><strong><span style=\"color: #000080;\">12<\/span><\/strong><\/td>\n<td><strong><span style=\"color: #000080;\">13<\/span><\/strong><\/td>\n<td><strong><span style=\"color: #000080;\">14<\/span><\/strong><\/td>\n<td><strong><span style=\"color: #000080;\">15<\/span><\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<br \/>\n<strong>Veamos como se puede programar &#8230;<\/strong><\/p>\n<p style=\"text-align: justify;\">Una de los ejercicios m\u00e1s comunes en los cursos de introducci\u00f3n a la programaci\u00f3n de ordenadores consiste en escribir un peque\u00f1o programa que produzca este tri\u00e1ngulo<span style=\"font-size: 11px;\">.<\/span><\/p>\n<p style=\"text-align: justify;\">El tri\u00e1ngulo de Floyd tiene varias propiedades matem\u00e1ticas interesantes. Los n\u00fameros del\u00a0<a title=\"Cateto\" href=\"http:\/\/es.wikipedia.org\/wiki\/Cateto\">cateto<\/a>\u00a0de la parte izquierda forman la secuencia de los\u00a0<a title=\"N\u00famero poligonal\" href=\"http:\/\/es.wikipedia.org\/wiki\/N%C3%BAmero_poligonal\">n\u00fameros poligonales<\/a>\u00a0centrales, mientras que los de la\u00a0<a title=\"Hipotenusa\" href=\"http:\/\/es.wikipedia.org\/wiki\/Hipotenusa\">hipotenusa<\/a>\u00a0nos dan el conjunto de los\u00a0<a title=\"N\u00famero triangular\" href=\"http:\/\/es.wikipedia.org\/wiki\/N%C3%BAmero_triangular\">n\u00fameros triangulares<\/a>.<\/p>\n<p>La suma de los n\u00fameros de la l\u00ednea\u00a0<em>n<\/em>\u00a0equivale a\u00a0<em>n<\/em>(<em>n<\/em><sup>2<\/sup>\u00a0+\u00a01)\/2 (sucesi\u00f3n\u00a0<a href=\"http:\/\/oeis.org\/A006003\" rel=\"nofollow\">A006003<\/a>\u00a0en\u00a0<a title=\"OEIS\" href=\"http:\/\/es.wikipedia.org\/wiki\/OEIS\">OEIS<\/a>).<\/p>\n<p><strong>Ejemplo en c\u00f3digo C<\/strong><\/p>\n<pre lang=\"C\" escaped=\"true\">\/***********************************************************\r\nPrograma: Triangulo de Floyd\r\n\r\nDescripci\u00f3n:\r\n\r\nAutor: Oscar de la Cuesta\r\nEste programa es una demostraci\u00f3n para el aprendizaje.\r\n\r\n************************************************************\/\r\n\r\n#include &lt;stdio.h&gt;\r\n\r\nint main() {\r\nint N; \/*Ultimo n\u00famero a imprimir*\/\r\nint linea = 0; \/*contador de l\u00edneas*\/\r\nint primero = 0; \/*primer n\u00famero de la l\u00ednea*\/\r\nint ultimo = 0; \/*Ultimo n\u00famero de la l\u00ednea*\/\r\n\r\n\/*--Leer el l\u00edmite de la serie--*\/\r\nprintf( \u00a0\"Cu\u00e1l es el l\u00edmite de la serie ? \");\r\nscanf( \"%d\", &amp;N);\r\n\r\n\/*--Imprime el tri\u00e1ngulo mediante un bucle de l\u00edneas--*\/\r\nwhile (ultimo&lt;N) {\r\n\/*actualizar los l\u00edmites*\/\r\nlinea++;\r\nprimero=ultimo+1;\r\nultimo=ultimo+linea;\r\nif (ultimo&gt;N) {\r\nultimo=N;\r\n}\r\n\r\n\/*imprimir los n\u00fameros*\/\r\nfor (int k=primero; k&lt;=ultimo; k++) {\r\nprintf(\"%5d\", k);\r\n}\r\nprintf(\"\\n\");\r\n}\r\n}<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>El\u00a0Tri\u00e1ngulo de Floyd, llamado as\u00ed en honor a\u00a0Robert Floyd, es un\u00a0tri\u00e1ngulo rect\u00e1ngulo\u00a0formado con\u00a0n\u00fameros naturales. Robert W. Floyd\u00a0\u00a0fue un prominente cient\u00edfico\u00a0estadounidense\u00a0en\u00a0inform\u00e1tica. Recibi\u00f3 el\u00a0Premio Turing\u00a0de la\u00a0ACM\u00a0en\u00a01978\u00a0\u00abpor tener una clara influencia en las metodolog\u00edas para la creaci\u00f3n de software eficiente y confiable, y por haber contribuido a la fundaci\u00f3n de las sub\u00e1reas teor\u00eda del reconocimiento de frases, sem\u00e1ntica de los lenguajes de programaci\u00f3n, verificaci\u00f3n automatizada de programas, s\u00edntesis automatizada de programas y an\u00e1lisis de algoritmos\u00bb Para crear un tri\u00e1ngulo de Floyd, se comienza con un 1 en la esquina superior izquierda, y se contin\u00faa escribiendo la secuencia de los n\u00fameros naturales de manera que cada l\u00ednea contenga un n\u00famero m\u00e1s que la anterior:<\/p>\n","protected":false},"author":1,"featured_media":2067,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,14],"tags":[43,38,223,44],"class_list":["post-2051","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programacion","category-varios","tag-c","tag-ejemplo","tag-floyd","tag-programacion-2"],"_links":{"self":[{"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/posts\/2051","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/comments?post=2051"}],"version-history":[{"count":23,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/posts\/2051\/revisions"}],"predecessor-version":[{"id":2076,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/posts\/2051\/revisions\/2076"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/media\/2067"}],"wp:attachment":[{"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/media?parent=2051"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/categories?post=2051"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.palentino.es\/blog\/wp-json\/wp\/v2\/tags?post=2051"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}