{"id":11,"date":"2009-01-06T19:04:59","date_gmt":"2009-01-07T00:04:59","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/programando\/?p=11"},"modified":"2009-01-07T12:54:30","modified_gmt":"2009-01-07T17:54:30","slug":"algoritmos-parte-1","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/programando\/algoritmos-parte-1\/","title":{"rendered":"Algoritmos  (Parte 1)"},"content":{"rendered":"<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">En el cap\u00edtulo anterior analizamos lo que es un programa y las fases que requiere el desarrollo del mismo. Ahora nos centraremos en<span> <\/span>el dise\u00f1o de algoritmos, previamente vimos un par de ejemplos, ahora profundizaremos en este tema.<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><strong><span lang=\"ES-TRAD\">\u00bfQu\u00e9 es un algoritmo?<\/span><\/strong><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Un algoritmo se puede definir como el camino que hay que seguir para llegar a la soluci\u00f3n del problema planteado. El dise\u00f1o de este camino o procedimiento debe ser siempre previo a la realizaci\u00f3n de del programa que lo ejecute.<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El m\u00e9todo algor\u00edtmico se basa en descomponer el programa en sucesivas secuencias de forma que al ir recogi\u00e9ndolas nos permite llegar a la soluci\u00f3n final.<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Aqu\u00ed algunos ejemplos:<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">1.<span> <\/span>Una m\u00e1quina est\u00e1 construida para suelos necesita ser programada para delimitar un terreno de 20  metros de largo y 15 de ancho. Escriba un algoritmo que realice esta tarea.<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">La m\u00e1quina acepta las siguientes instrucciones:<\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin-left: 18pt\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Subir brocha <span> <\/span>Sube la brocha para que \u00e9sta no pinte el suelo.<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Bajar brocha.<span> <\/span>Baja la brocha para que \u00e9sta pinte el suelo.<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Avanzar<span> <\/span>&lt;n\u00famero de metros&gt;<span> <\/span>Mueve la m\u00e1quina la cantidad de metros indicada.<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Girar<span> <\/span>&lt;\u00e1ngulo&gt;<span> <\/span>Gira la direcci\u00f3n de la m\u00e1quina.<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">La m\u00e1quina se encuentra inicialmente con la brocha subida y se encuentra en una de las esquinas del terreno a marcar.<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Soluci\u00f3n:<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">INICIO<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Bajar brocha<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"><span> <\/span>Avanzar 15<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"><span> <\/span>Girar 90<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"><span> <\/span>Avanzar<span> <\/span>20<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"><span> <\/span>Girar 90<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"><span> <\/span>Avanzar 15<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"><span> <\/span>Girar 90<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"><span> <\/span>Avanzar 20<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"><span> <\/span>Girar 90<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">FIN<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Existe un programa llamado <a href=\"http:\/\/edu.kde.org\/kturtle\/\">KTurtle <\/a>para Linux (<a href=\"http:\/\/el.media.mit.edu\/logo-foundation\/\">LOGO <\/a>para Windows)<span> <\/span>y sirve para practicar con instrucciones sencillas como las que vimos en este ejercicio, es una herramienta muy \u00fatil para <span> <\/span>practicar con algoritmos. Si te animas a hacer estas figuras en KTurtle deja el algoritmo como comentario.<\/span><\/p>\n<p class=\"MsoNormal\">\n<p class=\"MsoNormal\"><a href=\"http:\/\/blog.espol.edu.ec\/programando\/files\/2009\/01\/002.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-12\" src=\"http:\/\/blog.espol.edu.ec\/programando\/files\/2009\/01\/002-300x168.jpg\" alt=\"\" width=\"443\" height=\"248\" \/><\/a><\/p>\n<p class=\"MsoNormal\"><!--[if !vml]--><!--[endif]--><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">2.<span> <\/span>Una pareja de esposos con 2 hijas y 2 hijos, un polic\u00eda y un ladr\u00f3n necesitan cruzar el r\u00edo y para ello tienen una balsa, escriba el algoritmo necesario para que todos puedan cruzar el r\u00edo.<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><strong><span lang=\"ES-TRAD\"> <\/span><\/strong><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Las reglas son las siguientes: <\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin-left: 36pt\"><!--[if !supportLists]--><span style=\"font-family: &quot;Comic Sans MS&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&quot\"><span>\u2022<span style=\"font-style: normal;font-variant: normal;font-weight: normal;font-size: 7pt;font-family: &quot;Times New Roman&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&quot\"> <\/span><\/span><\/span><!--[endif]--><span lang=\"ES-TRAD\">1. Solo hasta 2 personas en la balsa pueden cruzar al mismo tiempo <\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin-left: 36pt\"><!--[if !supportLists]--><span style=\"font-family: &quot;Comic Sans MS&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&quot\"><span>\u2022<span style=\"font-style: normal;font-variant: normal;font-weight: normal;font-size: 7pt;font-family: &quot;Times New Roman&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&quot\"> <\/span><\/span><\/span><!--[endif]--><span lang=\"ES-TRAD\">2. El Padre no puede estar con ninguna de las hijas si la Madre no esta presente <\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin-left: 36pt\"><!--[if !supportLists]--><span style=\"font-family: &quot;Comic Sans MS&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&quot\"><span>\u2022<span style=\"font-style: normal;font-variant: normal;font-weight: normal;font-size: 7pt;font-family: &quot;Times New Roman&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&quot\"> <\/span><\/span><\/span><!--[endif]--><span lang=\"ES-TRAD\">3. La Madre no puede estar con ninguno de los hijos si el Padre no esta presente <\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin-left: 36pt\"><!--[if !supportLists]--><span style=\"font-family: &quot;Comic Sans MS&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&quot\"><span>\u2022<span style=\"font-style: normal;font-variant: normal;font-weight: normal;font-size: 7pt;font-family: &quot;Times New Roman&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&quot\"> <\/span><\/span><\/span><!--[endif]--><span lang=\"ES-TRAD\">4. El Ladr\u00f3n no puede estar con ning\u00fan miembro de familia sin la presencia del Polic\u00eda <\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin-left: 36pt\"><!--[if !supportLists]--><span style=\"font-family: &quot;Comic Sans MS&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&quot\"><span>\u2022<span style=\"font-style: normal;font-variant: normal;font-weight: normal;font-size: 7pt;font-family: &quot;Times New Roman&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&amp;quot&quot\"> <\/span><\/span><\/span><!--[endif]--><span lang=\"ES-TRAD\">5. Solo el Padre, la Madre y el Polic\u00eda saben como funciona la balsa <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Si quieren probar aqu\u00ed les dejo un <a href=\"http:\/\/blog.espol.edu.ec\/programando\/files\/2009\/01\/cruzarelrio.pps\">pps <\/a>con el juego XD<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">Soluci\u00f3n:<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">INICIO<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El polic\u00eda y el ladr\u00f3n cruzan el r\u00edo<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El polic\u00eda regresa<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El polic\u00eda y un ni\u00f1o cruzan el r\u00edo<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El polic\u00eda y el ladr\u00f3n regresan<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El padre y el otro ni\u00f1o cruzan el r\u00edo <\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El padre regresa<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El padre y la madre cruzan el r\u00edo<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">La madre regresa<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El polic\u00eda y el ladr\u00f3n cruzan el r\u00edo<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">La madre y una ni\u00f1a cruzan el r\u00edo<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El polic\u00eda y el ladr\u00f3n regresan<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El polic\u00eda y la ni\u00f1a cruzan el r\u00edo<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El polic\u00eda regresa<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">El polic\u00eda y el ladr\u00f3n cruzan el r\u00edo<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\">FIN<\/span><\/p>\n<p class=\"MsoNormal\"><span lang=\"ES-TRAD\"> <\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>En el cap\u00edtulo anterior analizamos lo que es un programa y las fases que requiere el desarrollo del mismo. Ahora nos centraremos en el dise\u00f1o de algoritmos, previamente vimos un par de ejemplos, ahora profundizaremos en este tema. \u00bfQu\u00e9 es un algoritmo? Un algoritmo se puede definir como el camino que hay que seguir para [&hellip;]<\/p>\n","protected":false},"author":385,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[2722],"tags":[6083,2726,2724,2725],"class_list":["post-11","post","type-post","status-publish","format-standard","hentry","category-aprende-a-programar","tag-algoritmos","tag-instrucciones","tag-kturtle","tag-logo"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/posts\/11","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/users\/385"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/comments?post=11"}],"version-history":[{"count":12,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/posts\/11\/revisions"}],"predecessor-version":[{"id":28,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/posts\/11\/revisions\/28"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/media?parent=11"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/categories?post=11"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/tags?post=11"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}