SlideShare una empresa de Scribd logo
1 de 17
KAREL




Lenguaje de Programación:Ciclos y Condicionales
             (instrucción iterate)




         José Luis Alonzo Velázquez   Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                        KAREL   Ejemplos de iterate
                                Anidando ciclos




La instrucción iterate
Está instrucción es empleada cuando una misma instrucción(o
bloque) requiere ser repetida.




                                Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                          KAREL   Ejemplos de iterate
                                  Anidando ciclos




La sintaxis de iterate es:
iterate(<número positivo>)
       {
       <instrucción>
       <instrucción>

      <instrucción>
      }

Nota:
Cuando sólo queremos repetir una sola instrucción, es posible
omitir las llaves "{" y "}". Sin embargo recomiendo que se utilicen
al principio, aunque sólo sea una instrucción.


              J                   Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                           KAREL   Ejemplos de iterate
                                   Anidando ciclos




Ejemplo: Vuelta a la derecha
define turnright()
      {
      iterate(3)
             {
             turnleft();
             }
      }




                                   Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                           KAREL   Ejemplos de iterate
                                   Anidando ciclos




Cosechando
Como Karel siempre ha sido muy atento con su familia,
decidió que era tiempo de contribuir con los ingresos de la familia.
Por lo tanto consiguió un trabajo para cosechar hileras de 20 a 100
esquinas(ya que son las mejores pagadas). Hacer un programa que
coseche 20 o 100 esquinas.




                                   Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                                 KAREL     Ejemplos de iterate
                                           Anidando ciclos



class program
      {
      define cosecha()
            {
            iterate(20)
                   {
                   pickbeeper();
                   move();
                   }
            }
      program()
            {
            cosecha();
            turnoff();
            }
      }

              José Luis Alonzo Velázquez   Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                          KAREL   Ejemplos de iterate
                                  Anidando ciclos




Anidando ciclos
En general, es posible anidar tantos ciclos como sean necesarios.
Esto es muy semejante a lo que ocurrıa cuando defin ıamos una
instrucción que usaba otra instrucción definida antes.




                                  Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                           KAREL   Ejemplos de iterate
                                   Anidando ciclos




Ejemplo: Sembrando
El Dr. Karelov desea colocar 10 beepers en 5 esquinas a lo largo de
una calle. Por ello, Karel debe ser programado para hacer el
trabajo por él.




       Figura: Colocando 10 beepers en 5 esquinas consecutivas.




                                   Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                          KAREL   Ejemplos de iterate
                                  Anidando ciclos




Programa
program()
     {
     iterate(5)
            {
            iterate(10)
                   {
                   putbeeper();
                   }
            move();
            }
     }



                                  Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                            KAREL    Ejemplos de iterate
                                     Anidando ciclos


Cosechando
El Dr. Karelov está complacido por el trabajo de Karel. Por ello, le
ha pedido que recoja todos los tornillos que hay en el suelo. Hay 5
tornillos por esquina a lo largo de un cuadrado de 6 avenidas y 4
calles.




                    Figura: Tornillos en el cuarto.
                                     Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                          KAREL   Ejemplos de iterate
                                  Anidando ciclos



program()
     {
     iterate(6)
            {
            iterate(4)
                   {
                   iterate(5)
                          pickbeeper();
                   move();
                   }
            halfturn();
            iterate(4)
                   move();
            leftmove();(*gira a la izquierda y da un paso*)
            turnleft();
            }
     turnoff();
                                  Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                           KAREL   Ejemplos de iterate
                                   Anidando ciclos




Errores en ciclos
Durante el uso de ciclos, es común cometer errores entre una
iteración y otra. Es decir, los errores se producen justo después de
terminar una iteración o al iniciar una.




                                   Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                          KAREL    Ejemplos de iterate
                                   Anidando ciclos




Ejemplo: Cosechando la calle
En cierta ocasión el Dr. Karelov envió a Karel por unos beepers a
lo largo de una calle que llegaba hasta una pared. Has un programa
para que Karel recoja todos los beepers hasta topar con pared.




           Figura: Recogiendo los beepers hasta la pared.




                                   Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                             KAREL   Ejemplos de iterate
                                     Anidando ciclos




El tıpico código ser ıa
program()
      {
      iterate(6)
             {
             pickbeeper();
             move();
             }
      }




                                     Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                             KAREL    Ejemplos de iterate
                                      Anidando ciclos




Resultado




            Figura: Mensaje de error al chocar con una pared.




                                     Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                            KAREL   Ejemplos de iterate
                                    Anidando ciclos




Un programa que si funciona bien es:
program()
     {
     iterate(5)
            {
            pickbeeper();
            move();
            }
     pickbeeper();
     }




                                    Lenguaje de Programación:Ciclos y Condicionales (instrucción i
Instrucción iterate
                   KAREL   Ejemplos de iterate
                           Anidando ciclos


Edgar Alfredo Duéñez Guzmán & Edgar Said Hernández
Sánchez & Marte Alejandro Ram ırez Ortegón Los Dilemas de
Karel. CIMAT, Mayo 2006.




                           Lenguaje de Programación:Ciclos y Condicionales (instrucción i

Más contenido relacionado

Destacado

Equipo 6 comparaciones
Equipo 6 comparacionesEquipo 6 comparaciones
Equipo 6 comparacionesgabo
 
Ejercicios karel
Ejercicios karelEjercicios karel
Ejercicios karelroyyyer500
 
Ciclos Condicionales Y Pseint
Ciclos Condicionales Y PseintCiclos Condicionales Y Pseint
Ciclos Condicionales Y PseintMonjeOneble
 
Presentación Riesgo Biologico.
Presentación  Riesgo  Biologico.Presentación  Riesgo  Biologico.
Presentación Riesgo Biologico.ArelisCrespo
 
Manipulacion de la pila!!
Manipulacion de la pila!!Manipulacion de la pila!!
Manipulacion de la pila!!romo91
 
Science Experiments on Tablets
Science Experiments on TabletsScience Experiments on Tablets
Science Experiments on TabletsMonica Burns
 
UX: Una disciplina para curiosos, inconformes y locos
UX: Una disciplina para curiosos, inconformes y locosUX: Una disciplina para curiosos, inconformes y locos
UX: Una disciplina para curiosos, inconformes y locosAndrea Cantú
 
Elementos que Forman Parte del Planteamiento del Problema en una Investigación
Elementos que Forman Parte del Planteamiento del Problema en una InvestigaciónElementos que Forman Parte del Planteamiento del Problema en una Investigación
Elementos que Forman Parte del Planteamiento del Problema en una InvestigaciónRosanna Silva Fernandez
 

Destacado (19)

Equipo 6 comparaciones
Equipo 6 comparacionesEquipo 6 comparaciones
Equipo 6 comparaciones
 
Tutorial ensamblador
Tutorial ensambladorTutorial ensamblador
Tutorial ensamblador
 
Mis practicas karel
Mis practicas karelMis practicas karel
Mis practicas karel
 
Ejercicios karel
Ejercicios karelEjercicios karel
Ejercicios karel
 
Ejercicios karel
Ejercicios karelEjercicios karel
Ejercicios karel
 
Mis Practicas karel 404
Mis Practicas karel 404Mis Practicas karel 404
Mis Practicas karel 404
 
Mis practicas de karel
Mis practicas de karelMis practicas de karel
Mis practicas de karel
 
While karel
While karelWhile karel
While karel
 
Div, idiv, Neg ensamblador
Div, idiv, Neg ensambladorDiv, idiv, Neg ensamblador
Div, idiv, Neg ensamblador
 
Lab etap4
Lab etap4Lab etap4
Lab etap4
 
Riesgos Biologicos
Riesgos BiologicosRiesgos Biologicos
Riesgos Biologicos
 
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADORUNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
 
Ciclos Condicionales Y Pseint
Ciclos Condicionales Y PseintCiclos Condicionales Y Pseint
Ciclos Condicionales Y Pseint
 
STEAM IT Up with the 8Cs
STEAM IT Up with the 8CsSTEAM IT Up with the 8Cs
STEAM IT Up with the 8Cs
 
Presentación Riesgo Biologico.
Presentación  Riesgo  Biologico.Presentación  Riesgo  Biologico.
Presentación Riesgo Biologico.
 
Manipulacion de la pila!!
Manipulacion de la pila!!Manipulacion de la pila!!
Manipulacion de la pila!!
 
Science Experiments on Tablets
Science Experiments on TabletsScience Experiments on Tablets
Science Experiments on Tablets
 
UX: Una disciplina para curiosos, inconformes y locos
UX: Una disciplina para curiosos, inconformes y locosUX: Una disciplina para curiosos, inconformes y locos
UX: Una disciplina para curiosos, inconformes y locos
 
Elementos que Forman Parte del Planteamiento del Problema en una Investigación
Elementos que Forman Parte del Planteamiento del Problema en una InvestigaciónElementos que Forman Parte del Planteamiento del Problema en una Investigación
Elementos que Forman Parte del Planteamiento del Problema en una Investigación
 

Similar a Ciclos y Condicionales - Iterate

Similar a Ciclos y Condicionales - Iterate (6)

Karel
KarelKarel
Karel
 
Karel
KarelKarel
Karel
 
Ciclos
CiclosCiclos
Ciclos
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivas
 
Estructura de control repetitivo diapositivas
Estructura de control repetitivo diapositivasEstructura de control repetitivo diapositivas
Estructura de control repetitivo diapositivas
 
Michell instrucciones de ontrol
Michell instrucciones de ontrolMichell instrucciones de ontrol
Michell instrucciones de ontrol
 

Más de Lincoln School

Introduccionalasbasesdedatos
IntroduccionalasbasesdedatosIntroduccionalasbasesdedatos
IntroduccionalasbasesdedatosLincoln School
 
Creando diagramas de flujo con dfd
Creando diagramas de flujo con dfdCreando diagramas de flujo con dfd
Creando diagramas de flujo con dfdLincoln School
 
Tema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmicoTema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmicoLincoln School
 
Tema 3 metodología para la solución de problemas
Tema 3  metodología para la solución de problemasTema 3  metodología para la solución de problemas
Tema 3 metodología para la solución de problemasLincoln School
 
Historia de los lenguajes de programación
Historia de los lenguajes de programaciónHistoria de los lenguajes de programación
Historia de los lenguajes de programaciónLincoln School
 
Ciclos y Condicionales
Ciclos y CondicionalesCiclos y Condicionales
Ciclos y CondicionalesLincoln School
 
Instrucciones Básicas
Instrucciones BásicasInstrucciones Básicas
Instrucciones BásicasLincoln School
 
Programación 2 - karel1
Programación 2 - karel1Programación 2 - karel1
Programación 2 - karel1Lincoln School
 
03 algorithm properties
03 algorithm properties03 algorithm properties
03 algorithm propertiesLincoln School
 
Algorithms and flowcharts1
Algorithms and flowcharts1Algorithms and flowcharts1
Algorithms and flowcharts1Lincoln School
 
Collaborative work with google docs
Collaborative work with google docsCollaborative work with google docs
Collaborative work with google docsLincoln School
 

Más de Lincoln School (14)

Introduccionalasbasesdedatos
IntroduccionalasbasesdedatosIntroduccionalasbasesdedatos
Introduccionalasbasesdedatos
 
Creando diagramas de flujo con dfd
Creando diagramas de flujo con dfdCreando diagramas de flujo con dfd
Creando diagramas de flujo con dfd
 
Tema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmicoTema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmico
 
Tema 3 metodología para la solución de problemas
Tema 3  metodología para la solución de problemasTema 3  metodología para la solución de problemas
Tema 3 metodología para la solución de problemas
 
Historia de los lenguajes de programación
Historia de los lenguajes de programaciónHistoria de los lenguajes de programación
Historia de los lenguajes de programación
 
Html
HtmlHtml
Html
 
Ciclos y Condicionales
Ciclos y CondicionalesCiclos y Condicionales
Ciclos y Condicionales
 
Instrucciones Básicas
Instrucciones BásicasInstrucciones Básicas
Instrucciones Básicas
 
Programación 2
Programación 2Programación 2
Programación 2
 
Programación 2 - karel1
Programación 2 - karel1Programación 2 - karel1
Programación 2 - karel1
 
03 algorithm properties
03 algorithm properties03 algorithm properties
03 algorithm properties
 
Algorithms and flowcharts1
Algorithms and flowcharts1Algorithms and flowcharts1
Algorithms and flowcharts1
 
Collaborative work with google docs
Collaborative work with google docsCollaborative work with google docs
Collaborative work with google docs
 
Movie maker
Movie makerMovie maker
Movie maker
 

Último

Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 

Último (20)

Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 

Ciclos y Condicionales - Iterate

  • 1. KAREL Lenguaje de Programación:Ciclos y Condicionales (instrucción iterate) José Luis Alonzo Velázquez Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 2. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos La instrucción iterate Está instrucción es empleada cuando una misma instrucción(o bloque) requiere ser repetida. Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 3. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos La sintaxis de iterate es: iterate(<número positivo>) { <instrucción> <instrucción> <instrucción> } Nota: Cuando sólo queremos repetir una sola instrucción, es posible omitir las llaves "{" y "}". Sin embargo recomiendo que se utilicen al principio, aunque sólo sea una instrucción. J Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 4. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos Ejemplo: Vuelta a la derecha define turnright() { iterate(3) { turnleft(); } } Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 5. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos Cosechando Como Karel siempre ha sido muy atento con su familia, decidió que era tiempo de contribuir con los ingresos de la familia. Por lo tanto consiguió un trabajo para cosechar hileras de 20 a 100 esquinas(ya que son las mejores pagadas). Hacer un programa que coseche 20 o 100 esquinas. Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 6. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos class program { define cosecha() { iterate(20) { pickbeeper(); move(); } } program() { cosecha(); turnoff(); } } José Luis Alonzo Velázquez Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 7. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos Anidando ciclos En general, es posible anidar tantos ciclos como sean necesarios. Esto es muy semejante a lo que ocurrıa cuando defin ıamos una instrucción que usaba otra instrucción definida antes. Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 8. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos Ejemplo: Sembrando El Dr. Karelov desea colocar 10 beepers en 5 esquinas a lo largo de una calle. Por ello, Karel debe ser programado para hacer el trabajo por él. Figura: Colocando 10 beepers en 5 esquinas consecutivas. Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 9. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos Programa program() { iterate(5) { iterate(10) { putbeeper(); } move(); } } Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 10. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos Cosechando El Dr. Karelov está complacido por el trabajo de Karel. Por ello, le ha pedido que recoja todos los tornillos que hay en el suelo. Hay 5 tornillos por esquina a lo largo de un cuadrado de 6 avenidas y 4 calles. Figura: Tornillos en el cuarto. Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 11. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos program() { iterate(6) { iterate(4) { iterate(5) pickbeeper(); move(); } halfturn(); iterate(4) move(); leftmove();(*gira a la izquierda y da un paso*) turnleft(); } turnoff(); Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 12. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos Errores en ciclos Durante el uso de ciclos, es común cometer errores entre una iteración y otra. Es decir, los errores se producen justo después de terminar una iteración o al iniciar una. Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 13. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos Ejemplo: Cosechando la calle En cierta ocasión el Dr. Karelov envió a Karel por unos beepers a lo largo de una calle que llegaba hasta una pared. Has un programa para que Karel recoja todos los beepers hasta topar con pared. Figura: Recogiendo los beepers hasta la pared. Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 14. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos El tıpico código ser ıa program() { iterate(6) { pickbeeper(); move(); } } Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 15. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos Resultado Figura: Mensaje de error al chocar con una pared. Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 16. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos Un programa que si funciona bien es: program() { iterate(5) { pickbeeper(); move(); } pickbeeper(); } Lenguaje de Programación:Ciclos y Condicionales (instrucción i
  • 17. Instrucción iterate KAREL Ejemplos de iterate Anidando ciclos Edgar Alfredo Duéñez Guzmán & Edgar Said Hernández Sánchez & Marte Alejandro Ram ırez Ortegón Los Dilemas de Karel. CIMAT, Mayo 2006. Lenguaje de Programación:Ciclos y Condicionales (instrucción i