SlideShare una empresa de Scribd logo
1 de 12
KAREL
Lenguaje de Programación: La instruccion while
Lenguaje de Programaci´on: La instrucci´on while
KAREL
Instrucci´on while
Sintaxis
Ejemplo
Generalizando Instrucciones
Principios de su utilidad
A medida que avanzamos en programación, queremos que nuestro
robot sea más independiente del mundo que lo rodea, es por eso
que nuestra función iterate, está muy limitada, ya que debe
conocer de antemano el mundo para determinar la cantidad de
veces que necesita realizar un bloque de instrucción con el fin de
llevar a cabo una tarea o trabajo. Por eso es que Karel cuenta con
una útil iterador llamado while, que funcionare mientras cierta(s)
condiciones se cumplan.
KAREL
Instrucci´on while
Sintaxis
Ejemplo
Generalizando Instrucciones
Sintaxis de la instrucci´on while
while(<condición>)
{
< Instrucción>
<instrucción>
.
..
<instrucción>
}
Lenguaje de Programaci´on: La instrucci´on while
KAREL
Instrucci´on while
Sintaxis
Ejemplo
Generalizando Instrucciones
IMPORTANTE
Las instrucciones que contienen el while, se repiten hasta que la
condición sea falsa, sin importar cuantas ocasiones lleva
ejecutándose. De este modo, podemos realizar una tarea mientras
una condición sea verdadera y as ´ı ya no tenemos que preocuparnos
por saber cuántas veces se debe repetir una instrucción, si no por
que la condición se siga o no cumpliendo.
KAREL
Instrucci´on while
Sintaxis
Ejemplo
Generalizando Instrucciones
Ejemplo
Si quisiéramos que Karel caminara hasta topar con una pared,
podríamos usar un iterate, pero si no sabemos dónde está la
pared, solo que están en algún punto enfrente de Karel, es cuando
resulta ´útil nuestro nuevo iterador.
Define camina a pared()
{
while(frontIsClear)
move();
}
Lenguaje de Programaci´on: La instrucci´on while
KAREL
Instrucci´on while
Sintaxis
Ejemplo
Generalizando Instrucciones
Instrucci´on while
Al igual que la instrucción iterate, podemos incluir más de una
instrucción. Solo necesitamos que las instrucciones estén
encerradas entre las llaves.
Ejemplo
while(notNextToABeeper)
{
putbeeper();
move();
}
turnof();
Jos ´e Luis Alonzo Vel´azquez Lenguaje de Programaci´on: La instrucci´on while
KAREL
Instrucci´on while
Sintaxis
Ejemplo
Generalizando Instrucciones
Ejemplo posición inicial
Lenguaje de Programaci´on: La instrucci´on while
KAREL
Instrucci´on while
Sintaxis
Ejemplo
Generalizando Instrucciones
Ejemplo posición final
Lenguaje de Programaci´on: La instrucci´on while
KAREL
Instrucci´on while
Sintaxis
Ejemplo
Generalizando Instrucciones
Mirando al norte
while(notFacingNorth)
{
turnleft();
}
Jos ´e Luis Alonzo Vel´azquez Lenguaje de Programaci´on: La instrucci´on while
KAREL
Instrucci´on while
Sintaxis
Ejemplo
Generalizando Instrucciones
Cosechando la calle
Nuestro querido Karel se encuentra frene a una calle que tiene
beepers y obstáculos(de una pared de alto). Los beepers se
encuentran uno tras otro, uno en cada esquina. Los obstáculos
pueden o no encontrarse entre esquina y esquina. Karel termina
cuando encuentra la primera esquina sin beeper.
Lenguaje de Programaci´on: La instrucci´on while
KAREL
Instrucci´on while
Sintaxis
Ejemplo
Generalizando Instrucciones
program()
{
while( nextToABeeper )
{
pickbeeper();
if(frontIsClear)
move();
else
salta pared();
}
Lenguaje de Programaci´on: La instrucci´on while
KAREL
Instrucci´on while
Sintaxis
Ejemplo
Generalizando Instrucciones
Anidando la instrucción while
Como en los casos de iterate y del if-else, la instrucción puede
anidarse cuantas veces sea necesaria para ejecutar alguna tarea.
Lenguaje de Programaci´on: La instrucci´on while

Más contenido relacionado

Destacado

Sobre Las Redes Sociales Y El Social Media
Sobre Las Redes Sociales Y El Social MediaSobre Las Redes Sociales Y El Social Media
Sobre Las Redes Sociales Y El Social Mediaeliasvillagran
 
Portfolio de artisca
Portfolio de artiscaPortfolio de artisca
Portfolio de artiscaIsaac Sabando
 
2015 McKinney Information
2015 McKinney Information2015 McKinney Information
2015 McKinney InformationSteven Bailey
 
Abre el Ojo Nº 13
Abre el Ojo Nº 13Abre el Ojo Nº 13
Abre el Ojo Nº 13Ied Madrid
 
Indepth Information on the Post Foundation of Battle Creek
Indepth Information on the Post Foundation of Battle Creek Indepth Information on the Post Foundation of Battle Creek
Indepth Information on the Post Foundation of Battle Creek GreenStreet Marketing
 
Nonprofit newsletters new
Nonprofit newsletters newNonprofit newsletters new
Nonprofit newsletters newStephanieMYoung
 
PresentacióN Final Felisa De Blas
PresentacióN Final Felisa De BlasPresentacióN Final Felisa De Blas
PresentacióN Final Felisa De BlasFelisa Gómez
 
RPS CV of Simon Hua
RPS CV of Simon HuaRPS CV of Simon Hua
RPS CV of Simon HuaSimon Hua
 

Destacado (19)

Puntos de fe_id7
Puntos de fe_id7Puntos de fe_id7
Puntos de fe_id7
 
Julius baer 2014 pucón
Julius baer 2014 pucónJulius baer 2014 pucón
Julius baer 2014 pucón
 
Sobre Las Redes Sociales Y El Social Media
Sobre Las Redes Sociales Y El Social MediaSobre Las Redes Sociales Y El Social Media
Sobre Las Redes Sociales Y El Social Media
 
Portfolio de artisca
Portfolio de artiscaPortfolio de artisca
Portfolio de artisca
 
[DE] MoReq2 Roadshow 2008 | Ulrich Kampffmeyer | Records Management
[DE] MoReq2 Roadshow 2008 | Ulrich Kampffmeyer | Records Management[DE] MoReq2 Roadshow 2008 | Ulrich Kampffmeyer | Records Management
[DE] MoReq2 Roadshow 2008 | Ulrich Kampffmeyer | Records Management
 
2015 McKinney Information
2015 McKinney Information2015 McKinney Information
2015 McKinney Information
 
MS Visio 2003 Technical Edition - Scheda corso LEN
MS Visio 2003 Technical Edition - Scheda corso LENMS Visio 2003 Technical Edition - Scheda corso LEN
MS Visio 2003 Technical Edition - Scheda corso LEN
 
Presentació del Voluntariat per la llengua (Agost 2014)
Presentació del Voluntariat per la llengua (Agost 2014)Presentació del Voluntariat per la llengua (Agost 2014)
Presentació del Voluntariat per la llengua (Agost 2014)
 
Abre el Ojo Nº 13
Abre el Ojo Nº 13Abre el Ojo Nº 13
Abre el Ojo Nº 13
 
Enoturismo bio bio
Enoturismo bio bioEnoturismo bio bio
Enoturismo bio bio
 
Javascript
JavascriptJavascript
Javascript
 
Eurosec'2008 christophe feltus
Eurosec'2008 christophe feltusEurosec'2008 christophe feltus
Eurosec'2008 christophe feltus
 
Catalogo mjm Rieles electricos
Catalogo mjm Rieles electricosCatalogo mjm Rieles electricos
Catalogo mjm Rieles electricos
 
Indepth Information on the Post Foundation of Battle Creek
Indepth Information on the Post Foundation of Battle Creek Indepth Information on the Post Foundation of Battle Creek
Indepth Information on the Post Foundation of Battle Creek
 
Auxiliares B O M B A R D 2011
Auxiliares B O M B A R D  2011Auxiliares B O M B A R D  2011
Auxiliares B O M B A R D 2011
 
Nonprofit newsletters new
Nonprofit newsletters newNonprofit newsletters new
Nonprofit newsletters new
 
PresentacióN Final Felisa De Blas
PresentacióN Final Felisa De BlasPresentacióN Final Felisa De Blas
PresentacióN Final Felisa De Blas
 
Peces marinos
Peces marinosPeces marinos
Peces marinos
 
RPS CV of Simon Hua
RPS CV of Simon HuaRPS CV of Simon Hua
RPS CV of Simon Hua
 

Similar a While karel (20)

Instrucciones Básicas
Instrucciones BásicasInstrucciones Básicas
Instrucciones Básicas
 
Ciclos
CiclosCiclos
Ciclos
 
Lais
LaisLais
Lais
 
Lais
LaisLais
Lais
 
Wile
WileWile
Wile
 
Michell instrucciones de ontrol
Michell instrucciones de ontrolMichell instrucciones de ontrol
Michell instrucciones de ontrol
 
Jesus cantillo
Jesus cantilloJesus cantillo
Jesus cantillo
 
Jesus cantillo
Jesus cantilloJesus cantillo
Jesus cantillo
 
Ciclos
CiclosCiclos
Ciclos
 
Clase 3 Unidad 2 Parte 2
Clase 3 Unidad 2 Parte 2Clase 3 Unidad 2 Parte 2
Clase 3 Unidad 2 Parte 2
 
Miguel
MiguelMiguel
Miguel
 
Miguel
MiguelMiguel
Miguel
 
Ciclos
CiclosCiclos
Ciclos
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
BucleCM
BucleCMBucleCM
BucleCM
 
Programacion I
Programacion I Programacion I
Programacion I
 
Estructuras de control repetitivo
Estructuras de control repetitivoEstructuras de control repetitivo
Estructuras de control repetitivo
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivas
 
Php
PhpPhp
Php
 

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
 
Tema 1 introducción a la computadora
Tema 1   introducción a la computadoraTema 1   introducción a la computadora
Tema 1 introducción a la computadoraLincoln 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
 
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
 
Tema 1 introducción a la computadora
Tema 1   introducción a la computadoraTema 1   introducción a la computadora
Tema 1 introducción a la computadora
 
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
 
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
 

While karel