{"id":388,"date":"2022-10-04T15:45:14","date_gmt":"2022-10-04T13:45:14","guid":{"rendered":"http:\/\/quadern-programacio.recursos.uoc.edu\/?page_id=388"},"modified":"2022-10-04T15:45:14","modified_gmt":"2022-10-04T13:45:14","slug":"4-2-iteracion","status":"publish","type":"page","link":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/4-2-iteracion\/","title":{"rendered":"4.2. Iteraci\u00f3n"},"content":{"rendered":"<p>Uno de los principales problemas que nos hemos encontrado a la hora de dibujar en nuestros <em>skteches <\/em>ha sido el de tener que repetir el mismo c\u00f3digo cuando hemos querido dibujar lo mismo varias veces. En principio, lo hemos podido solucionar usando variables y funciones: encapsulamos el c\u00f3digo de lo que queremos dibujar en una funci\u00f3n y luego la invocamos varias veces.<\/p>\n<p>Esto nos puede servir hasta cierto punto, pero imaginemos que queremos realizar el siguiente dibujo:<\/p>\n<figure id=\"attachment_118\" aria-describedby=\"caption-attachment-118\" style=\"width: 400px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" class=\"size-full wp-image-118\" src=\"\/wp-content\/uploads\/2022\/10\/PID_00290094_042.jpg\" alt=\"\" width=\"400\" height=\"397\" srcset=\"\/wp-content\/uploads\/2022\/10\/PID_00290094_042.jpg 400w, \/wp-content\/uploads\/2022\/10\/PID_00290094_042-300x298.jpg 300w, \/wp-content\/uploads\/2022\/10\/PID_00290094_042-150x150.jpg 150w\" sizes=\"(max-width: 400px) 100vw, 400px\" \/><figcaption id=\"caption-attachment-118\" class=\"wp-caption-text\">Figura 43. Una sucesi\u00f3n de c\u00edrculos<br \/>Fuente: elaboraci\u00f3n propia.<\/figcaption><\/figure>\n<p>Con lo que sabemos hasta ahora, la \u00fanica manera que tendr\u00edamos de realizarlo ser\u00eda repitiendo el mismo c\u00f3digo una y otra vez aumentando la posici\u00f3n en <em>x<\/em> de los c\u00edrculos:<\/p>\n<pre>\/\/ Vamos aumentando la x de los c\u00edrculos\r\ncircle(0, height * 0.5, 15);\r\ncircle(20, height * 0.5, 15);\r\ncircle(40, height * 0.5, 15);\r\ncircle(60, height * 0.5, 15);\r\n\/\/ ...\r\n\/\/ Y as\u00ed hasta tener todos los c\u00edrculos<\/pre>\n<p>Para ser un dibujo relativamente sencillo, implica muchas l\u00edneas de c\u00f3digo realizarlo de esta manera, y va a ser f\u00e1cil que nos equivoquemos al escribir alguna de las coordenadas. Afortunadamente para nosotros, si hay algo para lo que los ordenadores son eficientes es para realizar tareas de manera muy r\u00e1pida. A nosotros, escribir las veinte l\u00edneas que dibujan los c\u00edrculos puede llevarnos varios minutos, pero si sabemos mediante nuestro c\u00f3digo decirle al ordenador que realice la misma operaci\u00f3n veinte veces, el ordenador lo har\u00e1 en cuesti\u00f3n de microsegundos.<\/p>\n<p>Para ello, contamos con los bucles <span class=\"courier\">for<\/span>, que nos ayudar\u00e1n a repetir l\u00edneas de c\u00f3digo tantas veces como queramos.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Uno de los principales problemas que nos hemos encontrado a la hora de dibujar en nuestros skteches ha sido el de tener que repetir el mismo c\u00f3digo cuando hemos querido dibujar lo mismo varias veces. En principio, lo hemos podido solucionar usando variables y funciones: encapsulamos el c\u00f3digo de lo que queremos dibujar en una [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"acf":[],"_links":{"self":[{"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/pages\/388"}],"collection":[{"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/comments?post=388"}],"version-history":[{"count":1,"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/pages\/388\/revisions"}],"predecessor-version":[{"id":389,"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/pages\/388\/revisions\/389"}],"wp:attachment":[{"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/media?parent=388"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}