La construcción de flujo de control de programación final para aprender son sentencias condicionales ( if y if/else ).
Un if/else La instrucción ejecuta un bloque de código "if" si, y solo si, el proporcionadopruebaes cierto para el estado del mundo en el momento en que el programa llega a la declaración. De lo contrario, el programa ejecuta el bloque de código "else".
if( prueba ){
si el código de bloqueo
} else {
otro bloque de código
}
Para tener una idea de dónde pueden ser útiles las sentencias condicionales, escribamos un programa que tenga Karel invierta una línea de conos . Si una casilla tenía anteriormente un cono , Karel debería recogerlo. Si un cuadrado no tiene cono , Karel debe colocar uno abajo.
Tenga en cuenta que un if declaración no necesita tener una else bloque - en cuyo caso la declaración opera como una while ciclo que solo se ejecuta una vez:
if( prueba ){
si el código de bloqueo
}
Ese último ejemplo utilizó una nueva condición. Aquí hay una lista de todas las condiciones que Karel conoce:
| Prueba | Opuesto | Lo que verifica |
|---|---|---|
frenteDespejado() |
frenteBloqueado() |
¿Hay una pared en frente de Karel ? |
conosPresentes() |
conosAusentes() |
¿Hay conos en esta esquina? |
izquierdaDespejada() |
izquierdaBloqueada() |
¿Hay un muro a Karel la izquierda? |
derechaDespejada() |
derechaBloqueada() |
¿Hay una pared a la derecha de Karel ? |
bolsaConConos() |
bolsaSinConos() |
¿Hay conos en la bolsa de Karel ? |
rumboNorte() |
sinRumboNorte() |
¿Está Karel mirando hacia el norte? |
rumboSur() |
sinRumboSur() |
Es Karel hacia el sur? |
rumboEste() |
sinRumboEste() |
Es Karel mirando hacia el este? |
rumboOeste() |
sinRumboOeste() |
¿Está el Karel mirando al oeste? |
Felicidades Ahora conoces todos los bloques de flujo de control de programación básicos. Mientras los aprendió con Karel , métodos, ciclo while s, ciclos for , las ciclos for if / else funcionan de la misma manera en casi todos los lenguajes principales, incluido Java.
Ahora que tiene los componentes básicos, puede juntarlos para crear soluciones a problemas cada vez más complejos. En gran medida, la programación es la ciencia de resolver problemas por computadora. Debido a que los problemas suelen ser difíciles, las soluciones y los programas que implementan esas soluciones también pueden ser difíciles. Para facilitar el desarrollo de esas soluciones, debe adoptar una metodología y disciplina que reduzca el nivel de esa complejidad a una escala manejable.