Download - Sentencia if else
Sentencia If else en Java
Programación Estructurada
Objetivos
En esta lección aprenderán como: Crear un diagrama de flujo para planificar el
código de una aplicación específicamente para la estructura de selección
Escribir un enunciado If…Then…Else Escribir código que use operadores relacionales y
lógicos Usar la función UCase Escribir una estructura de selección anidada Escribir un enunciado Select Case
La estructura de selección
Las secciones previas han usado secuencias de programación estructurada, donde cada una de las instrucciones se procesa una después de otra, tal como aparecen en el código
En muchas aplicaciones, es necesario que la siguiente instrucción a procesar dependa del resultado de una decisión o comparación que el programa debe hacer
La estructura de selección
Se debe usar la estructura de selección, también llamada estructura de decisión, cuando se quiera que un programa tome una decisión o haga una comparación y, con base en el resultado, seleccionar una de dos rutas
Se puede pensar en la estructura de selección como una bifurcación en el camino
Decisiones que podrías tener que hacer
Ejemplo 1 Ejemplo 2
Si esta lloviendo entonces Si tienes examen mañana entonces
Usar impermeable Estudia hoy
Llevar paraguas Si no
Ve al cine
La estructura de selección
En los ejemplos anteriores, la sección que está en itálicas se llama condición y especifica la decisión que se tiene que hacer de manera que la respuesta sea si o no (verdadero o falso) únicamente
Si la condición es verdadera, se realizan cierto conjunto de tareas
Si la condición es falsa, se pueden o no realizar otro conjunto de tareas distintas
La estructura de selección
La computadora puede evaluar una condición y seleccionar la tarea apropiada a realizar con base en esa evaluación
El programador debe asegurarse de escribir la condición de manera que el resultado pueda evaluarse con un verdadero o falso
También debe especificar las tareas a realizar cuando la condición se cumpla y, de ser necesario, las tareas a realizar cuando no se cumpla.
La estructura de selección
Para hacer esto se usa la estructura de selección o estructura de decisión
Se ilustra el ejemplo anterior usando la estructura de selección
Seudo código estructura de selección
Ejemplo 1 Ejemplo 2
if esta_lloviendo then
Usar impermeable
Llevar paraguas
End if
If examen_mañana then
Estudia hoy
Else
Ve al cine
End if
Usando diagramas de flujo
Además del seudo código, los programadores usan diagramas de flujo para ayudarse a planear el código de cada objeto
El diagrama de flujo usa símbolos estándar para mostrar los pasos que necesita realizar un objeto para llevar a cabo su tarea
A continuación se muestran ejemplos de diagrama de flujo
Inicio
¿esta lloviendo?
Usar impermeable
Salir de casa
Fin
Llevar paraguas
Si
No
Inicio
¿mañana hay examen?
Estudiar hoy
Realizar actividad
Fin
Salir al cine
SiNo
Diagramas de Flujo
Notarán que los diagramas de flujo contienen cuatro símbolos diferentes: un óvalo, un paralelogramo y un diamante
Los símbolos están conectados entre sí mediante líneas, llamadas líneas de flujo
El óvalo es el símbolo de inicio o fin del diagrama
Los rectángulos se conocen como los símbolos de procesamiento
Diagramas de flujo
Se usa este símbolo para representar las tareas a realizar, asignación de valores a variables y propiedades de los controles, así como cálculos a realizar
El paralelogramo es llamado el símbolo de entrada o salida de información
El diamante es el símbolo de la selección o repetición, ya que se usa para representar ambas estructuras
Diagramas de flujo
Nótese que en este caso, dentro del diamante hay una pregunta que puede ser respondida con un si o con un no (verdadero o falso)
Dependiendo de la respuesta, la línea de flujo indicará las tareas correspondientes a realizar en cada caso
Codificando la estructura de selección en Javaif (condición) sentencia;
La condición es una expresión booleana. La sentencia se ejecuta solamente si la
expresión booleana es verdadera.
¿Qué ocurre si la condición no se cumple? En este caso nada. Podemos agregar una serie de instrucciones que se ejecutarán solo si la condición no se cumple.
Para esto tendremos que agregar la sentencia else.
La estructura de selección quedará así:if (condición) sentencia 1;
else sentencia 2;
Las buenas prácticas en defensa de un código mantenible han dictaminado que utilicemos las llaves en todo momento, aún en el caso que utilicemos una sola sentencia.if (condición) { sentencia; }
else { sentencia; }
Operadores relacionales
A continuación se muestra una tabla con los operadores que pueden usarse dentro de la condición en una estructura If ..Then …Else
Operadores relacionales
Operador relacional significado
= Igual a
> Mayor que
>= Mayor o igual que
< Menor que
<= Menor o igual que
!= Diferente
Precedencia de operadores
Hay que tener en cuenta que los operadores relacionales se evalúan después que los operadores matemáticos
Es decir, si tenemos la siguiente expresión5 – 2 > 1 + 2
Los dos operadores matemáticos se evaluarán antes que el operador relacional (>)
Operadores relacionales
Todos las expresiones que contengan un operador relaciona resultarán en verdadero o falso
Operadores lógicos
Se pueden usar los operadores lógicos para combinar varias condiciones dentro de una condición compuesta
A continuación se muestran los operadores lógicos más comunes, su significado y su orden de precedencia
Operadores lógicos
Operador lógico
Significado Precedencia
! (Not) Invierte el valor de la condición, verdadero se vuelve falso y falso se vuelve verdadero
1
&& (And) Todas las condiciones conectadas por el operador And deben ser verdaderas para que el conjunto sea verdadero
2
|| (Or) Solo una de las condiciones conectadas con el operador Or tiene que ser verdadera para que el conjunto sea verdadero
3
Ejercicio de ejemplo
Queremos realizar una división de enteros. Es fácil, ya sabemos como hacerlo,
utilizando variables y operadores. Pero se debe tener cuidado de no realizar
una división por cero. Podemos establecer una condición que
permita la división para todos los números y que rechace cualquier divisor cero
Ejemplo
public class DivisionSegura { public static void main(String args[]){
int x = 12; int y = 2; int z = 0; if( y !=0 ) {
z = x / y; System.out.println("El resultado es : " + z);
} else { System.out.println("Atención! división por 0");
}}
}