Estructuras de seleccion anidadas

7,762 views
7,479 views

Published on

1 Comment
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total views
7,762
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
60
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

Estructuras de seleccion anidadas

  1. 1. Estructuras de selección anidadas Apoyo Programación Estructurada
  2. 2. Definición <ul><li>Una selección anidada es una estructura en las que cualquier ruta de verdadero o falso incluye a su vez otra estructura de selección </li></ul>
  3. 3. ¿La persona tiene 18 años? ¿la persona está Registrada? Despliega mensaje “ eres muy joven Para votar” Despliega mensaje “ Debe registrarse Antes de votar” Despliega mensaje “ puedes votar”
  4. 4. If anidado <ul><li>if ( condición1 ) { </li></ul><ul><ul><li>if ( condición2 ) { </li></ul></ul><ul><ul><li>sentencia1; </li></ul></ul><ul><ul><li>} </li></ul></ul><ul><ul><li>else { </li></ul></ul><ul><ul><ul><li>sentencia2; </li></ul></ul></ul><ul><ul><li>} </li></ul></ul><ul><li>} </li></ul><ul><li>else { </li></ul><ul><li>sentencia2; </li></ul><ul><li>} </li></ul>
  5. 5. Estructura para múltiples selecciones <ul><li>Suponga que su aplicación necesita mostrar un mensaje con base en la letra de calificación que el usuario ingrese en una caja de texto </li></ul><ul><li>Las letras y sus correspondientes mensajes se muestran a continuación </li></ul>
  6. 6. Ejemplo Calificación Mensaje A Excelente B Arriba del promedio C Promedio D,F Debajo del promedio I Incompleto W Baja Otra Calificación incorrecta
  7. 7. Sentencia switch <ul><li>Para implementar esto se puede usar un enunciado de selección anidada, pero cuando una selección tiene varias rutas de las cuales elegir, normalmente es mejor usar la forma Switch de la estructura de selección </li></ul><ul><li>A veces se refieren a la forma Switch como la estructura de selección extendida </li></ul>
  8. 8. Calificación Mostrar “ Excelente” Mostrar “ Arriba del Promedio” Mostrar “ Promedio” Mostrar “ Debajo del Promedio” Mostrar “ incompleto” Mostrar “ Baja” Mostrar “ Calificación Incorrecta” =“A” =“B” =“C” =“D”,”F” =“I” =“W” Otro
  9. 9. Sentencia switch <ul><li>switch( expresión ) { </li></ul><ul><ul><li>case constante1: </li></ul></ul><ul><ul><ul><li>sentencia1; </li></ul></ul></ul><ul><ul><ul><li>... </li></ul></ul></ul><ul><ul><ul><li>break; </li></ul></ul></ul><ul><ul><li>... </li></ul></ul><ul><ul><li>case constanteN: </li></ul></ul><ul><ul><ul><li>sentenciaN; </li></ul></ul></ul><ul><ul><ul><li>... </li></ul></ul></ul><ul><ul><ul><li>break; </li></ul></ul></ul><ul><ul><li>default: </li></ul></ul><ul><ul><ul><li>sentencia; </li></ul></ul></ul><ul><ul><ul><li>... </li></ul></ul></ul><ul><ul><ul><li>break; </li></ul></ul></ul><ul><li>} </li></ul>
  10. 10. Sentencia switch <ul><li>El valor de la expresión y de las constantes tiene que ser de tipo char, byte, short o int. </li></ul><ul><li>No hay lugar para booleanos, reales ni long porque, en la ejecución, todos los valores que incorporamos se transforman en valores de tipo int. </li></ul>
  11. 11. Sentencia switch <ul><li>Al evaluar la expresión de switch, el intérprete busca una constante con el mismo valor. </li></ul><ul><li>Si la encuentra, ejecuta las sentencias asociadas a esta constante hasta que tropiece con un break. </li></ul><ul><li>La sentencia break finaliza la ejecución de esta estructura. </li></ul><ul><li>Si no encuentra ninguna constante que coincida con la expresión, busca la línea default. </li></ul><ul><li>Si existe, ejecuta las sentencias que le siguen. La sentencia default es opcional. </li></ul>
  12. 12. <ul><li>public class Calificacion{ </li></ul><ul><ul><li>public static void main(String args[]){ </li></ul></ul><ul><ul><ul><li>//..aqui va el codigo para solicitar al usuario que escriba la letra </li></ul></ul></ul><ul><ul><ul><li>System.out.print(&quot;El resultado es : &quot;); </li></ul></ul></ul><ul><ul><ul><li>switch ( op ) { </li></ul></ul></ul><ul><ul><ul><ul><li>case ‘A': </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>System.out.println( “Excelente” ); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>break; </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>case ‘B': </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>System.out.println(“Arriba del Promedio”); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>break; </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>case ‘C': </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>System.out.println( “Promedio” ); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>break; </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>case ‘D': </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>System.out.println(“Debajo del Promedio”); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>break; </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>case ‘E': </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>System.out.println(“Debajo del Promedio”); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>break; </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>case ‘F': </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>System.out.println( “incompleto” ); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>break; </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>case ‘G': </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>System.out.println(“Baja”); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>break; </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>default: </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>System.out.println(“Calificación Incorrecta”); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>break; </li></ul></ul></ul></ul></ul><ul><ul><ul><li>} </li></ul></ul></ul><ul><ul><li>} </li></ul></ul><ul><li>} </li></ul>

×