SlideShare una empresa de Scribd logo
1 de 18
Descargar para leer sin conexión
1
Fundamentos de Programación
Ingeniería Informática
en Sistemas de Información
Estructuras de selección
Alicia Troncoso
2
Contenido
l  Sentencias y composición
l  Estructuras de selección
l  Sentencia if
l  Sentencia if-else
l  Sentencias if-else anidadas
l  Sentencia switch
l  Ejercicios
3
Sentencias
l  Un programa se compone de un conjunto de sentencias
(instrucciones).
l  Las sentencias puede ser básicas:
l  printf(“Holan”);
l  scanf(“%d”,&horas);
l  x = x+23;
l  Para cualquier programa no trivial necesitaremos más de una
sentencia básica. Por tanto necesitamos mecanismos para
crear sentencias más complicadas a partir de las sentencias
básicas. A las sentencias que combinan varias sentencias
básicas les llamaremos sentencias compuestas.
4
Mecanismos de composición
l  Existen tres mecanismos básicos de crear
sentencias compuestas a partir de
sentencias básicas:
l  Secuencia: “Ve a la panadería. Pide un pan.
Págalo. Tráelo a casa. Córtalo en pedazos.”
l  Selección: “Si llueve coge el paraguas, si no coge
el abanico.”
l  Repetición: “Copia 100 veces ‘No hablaré en
clase’”
5
Composición secuencial
l  En C la composición secuencial se consigue:
l  Abriendo la secuencia con una llave {
l  Utilizando el punto y coma para unir las
sentencias que se desean componer
l  Cerrando la secuencia con otra llave }
{
s_1;
s_2;
s_3;
}
Ejecuta la sentencia s_1, cuando
termines, ejecuta la sentencia
s_2 y cuando termines ejecuta la
sentencia s_3
6
Estructuras de selección
l  En ocasiones es necesario ejecutar un
conjunto de sentencias u otras en función de
la situación en la que se encuentra el
programa.
l  En C existen dos sentencias que permiten
crear estructuras de selección:
l  if
l  switch
7
Sentencia if
if (condición) sentencia
Si la condición es verdadera ejecuta la sentencia.
Si es falsa no ejecuta nada.
8
Ejemplo 1
Programa que lee dos números enteros (n1 y n2) y en
el caso de que el primero sea mayor que el segundo
muestra “n1 es mayor que n2”
9
Ejemplo 2
Programa que lee dos números enteros (n1 y n2) y si
el primer número es mayor que cero muestra “n1 es
mayor que cero”. Además, si el segundo número es
mayor que cero muestra “n2 es mayor que cero”
10
Sentencia if-else
if (condición)
sentencia_1
else
sentencia_2
Si la condición es verdadera ejecuta
la sentencia sentencia_1. Si es falsa
ejecuta la sentencia sentencia_2
11
Ejemplo
Programa que lee dos números enteros (n1 y n2) y si el
primer número es múltiplo del segundo muestra “n1 es
múltiplo de n2”. En caso contrario muestra “n1 no es
múltiplo de n2”.
12
Múltiples alternativas
l  1 alternativa -> if
l  2 alternativas -> if-else
l  ¿Cómo podemos hacer si tenemos más de 2
alternativas?
l  Ejemplo: Programa que lee un numero real
que representa la nota de una asignatura y
muestra si es un suspenso [0,5), un
suficiente [5,6.5), un notable [6.5,8.5) o un
excelente [8.5,10]
l  En ese caso podemos utilizar sentencias if-
else anidadas
13
Sentencias if-else anidadas
if (condicion_1)
sentencia_1;
else if (condicion_2)
sentencia_2;
…
else if (condicion_n-1)
sentencia_n-1;
else
sentencia_n;
Si la condición condicion_1 es
verdadera ejecuta la sentencia
sentencia_1. Si no lo es, analiza
la condición condicion_2 y si es
verdadera, ejecuta la sentencia
sentencia_2
…
si finalmente ninguna de las n-1
condiciones son verdaderas,
ejecuta la sentencia sentencia_n
14
Ejemplo
Programa que lee un numero real que
representa la nota numérica de una asignatura
y muestra si es un suspenso [0,5), un suficiente
[5,6.5), un notable [6.5,8.5) o un excelente
[8.5,10]
15
Alternativas aún más múltiples
l  En ocasiones se da el caso de que existen
muchas alternativas que dependen de una
única variable.
l  Ejemplo: Programa que lee un numero
entero que representa un mes (1 -> enero,
12->diciembre) y muestra el nombre del mes.
l  Podríamos utilizar sentencias if-else
anidadas, pero queda demasiado extenso.
16
Sentencia switch
switch (selector) {
case etiq_1:
sentencia_1;
…
case etiq_n:
sentencia_n;
default:
sentencia_n+1;
}
Comprueba si el valor del
selector es el de la etiqueta
etiq_1. Si no lo es comprueba
etiq_2,…
Si encuentra una etiqueta
etiq_i que coincide con el
valor del selector. A partir de
ese momento ejecuta las
sentencias desde sentencia_i
hasta sentencia_n+1.
En otro caso ejecuta la
sentencia sentencia_n+1.
17
Sentencia switch-break
switch (selector) {
case etiq_1:
sentencia_1;
break;
…
case etiq_n:
sentencia_n;
break;
default:
sentencia_n+1;
}
Comprueba si el valor del
selector es el de la etiqueta
etiq_1. Si no lo es comprueba
etiq_2,…
Si encuentra una etiqueta
etiq_i que coincide con el
valor del selector ejecuta las
sentencia sentencia_i.
En otro caso ejecuta la
sentencia sentencia_n+1
18
Ejemplo
Programa que lee un número entero que
representa un mes (1 -> enero, 12->diciembre)
y muestra el nombre del mes.

Más contenido relacionado

Similar a Sentencias If y Else.pdf

¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?grachika
 
Curso php - capitulo 2
Curso php - capitulo 2Curso php - capitulo 2
Curso php - capitulo 2yanburbano
 
Estructuras de Control C++
Estructuras de Control C++Estructuras de Control C++
Estructuras de Control C++Jorge Leonardo
 
Estructuras de control. Secuencial, condicional y repetitivas..pdf
Estructuras de control. Secuencial, condicional y repetitivas..pdfEstructuras de control. Secuencial, condicional y repetitivas..pdf
Estructuras de control. Secuencial, condicional y repetitivas..pdfnicolaspelaez3
 
Estructuras condicionales
Estructuras condicionalesEstructuras condicionales
Estructuras condicionalesSTEVENZAFIRO
 
Estructuras de control de flujo
Estructuras de control de flujoEstructuras de control de flujo
Estructuras de control de flujoAliandroMejias
 
5.1 instruccion if-else
5.1 instruccion if-else5.1 instruccion if-else
5.1 instruccion if-elseSNPP
 
Parcial de introduccion
Parcial de introduccionParcial de introduccion
Parcial de introduccionfederperez99
 
Universidad fermin toro
Universidad fermin toroUniversidad fermin toro
Universidad fermin torofoliche
 
Semana 5 - Principios de Algoritmos.pdf
Semana 5 - Principios de Algoritmos.pdfSemana 5 - Principios de Algoritmos.pdf
Semana 5 - Principios de Algoritmos.pdfCarlosJahnsen3
 

Similar a Sentencias If y Else.pdf (20)

¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?
 
Curso php - capitulo 2
Curso php - capitulo 2Curso php - capitulo 2
Curso php - capitulo 2
 
Guia 4
Guia 4Guia 4
Guia 4
 
Python02
Python02Python02
Python02
 
Estructuras de Control C++
Estructuras de Control C++Estructuras de Control C++
Estructuras de Control C++
 
Estructuras de control. Secuencial, condicional y repetitivas..pdf
Estructuras de control. Secuencial, condicional y repetitivas..pdfEstructuras de control. Secuencial, condicional y repetitivas..pdf
Estructuras de control. Secuencial, condicional y repetitivas..pdf
 
20.estructuras-control.pdf
20.estructuras-control.pdf20.estructuras-control.pdf
20.estructuras-control.pdf
 
Estructuras condicionales
Estructuras condicionalesEstructuras condicionales
Estructuras condicionales
 
Estructuras de control de flujo
Estructuras de control de flujoEstructuras de control de flujo
Estructuras de control de flujo
 
5.1 instruccion if-else
5.1 instruccion if-else5.1 instruccion if-else
5.1 instruccion if-else
 
Parcial de introduccion
Parcial de introduccionParcial de introduccion
Parcial de introduccion
 
Taller Python
Taller PythonTaller Python
Taller Python
 
Pseucodigos
PseucodigosPseucodigos
Pseucodigos
 
Universidad fermin toro
Universidad fermin toroUniversidad fermin toro
Universidad fermin toro
 
Práctica 10
Práctica 10Práctica 10
Práctica 10
 
condicionales
condicionalescondicionales
condicionales
 
06 Desarrollo Programas Estructurados
06 Desarrollo Programas Estructurados06 Desarrollo Programas Estructurados
06 Desarrollo Programas Estructurados
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 
Semana 5 - Principios de Algoritmos.pdf
Semana 5 - Principios de Algoritmos.pdfSemana 5 - Principios de Algoritmos.pdf
Semana 5 - Principios de Algoritmos.pdf
 
Diapositiva
DiapositivaDiapositiva
Diapositiva
 

Último

Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
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
 
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
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
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
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
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
 
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
 
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
 
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
 
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
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
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
 
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
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 

Último (20)

Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
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
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
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...
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
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
 
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...
 
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
 
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
 
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
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
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
 
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
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 

Sentencias If y Else.pdf

  • 1. 1 Fundamentos de Programación Ingeniería Informática en Sistemas de Información Estructuras de selección Alicia Troncoso
  • 2. 2 Contenido l  Sentencias y composición l  Estructuras de selección l  Sentencia if l  Sentencia if-else l  Sentencias if-else anidadas l  Sentencia switch l  Ejercicios
  • 3. 3 Sentencias l  Un programa se compone de un conjunto de sentencias (instrucciones). l  Las sentencias puede ser básicas: l  printf(“Holan”); l  scanf(“%d”,&horas); l  x = x+23; l  Para cualquier programa no trivial necesitaremos más de una sentencia básica. Por tanto necesitamos mecanismos para crear sentencias más complicadas a partir de las sentencias básicas. A las sentencias que combinan varias sentencias básicas les llamaremos sentencias compuestas.
  • 4. 4 Mecanismos de composición l  Existen tres mecanismos básicos de crear sentencias compuestas a partir de sentencias básicas: l  Secuencia: “Ve a la panadería. Pide un pan. Págalo. Tráelo a casa. Córtalo en pedazos.” l  Selección: “Si llueve coge el paraguas, si no coge el abanico.” l  Repetición: “Copia 100 veces ‘No hablaré en clase’”
  • 5. 5 Composición secuencial l  En C la composición secuencial se consigue: l  Abriendo la secuencia con una llave { l  Utilizando el punto y coma para unir las sentencias que se desean componer l  Cerrando la secuencia con otra llave } { s_1; s_2; s_3; } Ejecuta la sentencia s_1, cuando termines, ejecuta la sentencia s_2 y cuando termines ejecuta la sentencia s_3
  • 6. 6 Estructuras de selección l  En ocasiones es necesario ejecutar un conjunto de sentencias u otras en función de la situación en la que se encuentra el programa. l  En C existen dos sentencias que permiten crear estructuras de selección: l  if l  switch
  • 7. 7 Sentencia if if (condición) sentencia Si la condición es verdadera ejecuta la sentencia. Si es falsa no ejecuta nada.
  • 8. 8 Ejemplo 1 Programa que lee dos números enteros (n1 y n2) y en el caso de que el primero sea mayor que el segundo muestra “n1 es mayor que n2”
  • 9. 9 Ejemplo 2 Programa que lee dos números enteros (n1 y n2) y si el primer número es mayor que cero muestra “n1 es mayor que cero”. Además, si el segundo número es mayor que cero muestra “n2 es mayor que cero”
  • 10. 10 Sentencia if-else if (condición) sentencia_1 else sentencia_2 Si la condición es verdadera ejecuta la sentencia sentencia_1. Si es falsa ejecuta la sentencia sentencia_2
  • 11. 11 Ejemplo Programa que lee dos números enteros (n1 y n2) y si el primer número es múltiplo del segundo muestra “n1 es múltiplo de n2”. En caso contrario muestra “n1 no es múltiplo de n2”.
  • 12. 12 Múltiples alternativas l  1 alternativa -> if l  2 alternativas -> if-else l  ¿Cómo podemos hacer si tenemos más de 2 alternativas? l  Ejemplo: Programa que lee un numero real que representa la nota de una asignatura y muestra si es un suspenso [0,5), un suficiente [5,6.5), un notable [6.5,8.5) o un excelente [8.5,10] l  En ese caso podemos utilizar sentencias if- else anidadas
  • 13. 13 Sentencias if-else anidadas if (condicion_1) sentencia_1; else if (condicion_2) sentencia_2; … else if (condicion_n-1) sentencia_n-1; else sentencia_n; Si la condición condicion_1 es verdadera ejecuta la sentencia sentencia_1. Si no lo es, analiza la condición condicion_2 y si es verdadera, ejecuta la sentencia sentencia_2 … si finalmente ninguna de las n-1 condiciones son verdaderas, ejecuta la sentencia sentencia_n
  • 14. 14 Ejemplo Programa que lee un numero real que representa la nota numérica de una asignatura y muestra si es un suspenso [0,5), un suficiente [5,6.5), un notable [6.5,8.5) o un excelente [8.5,10]
  • 15. 15 Alternativas aún más múltiples l  En ocasiones se da el caso de que existen muchas alternativas que dependen de una única variable. l  Ejemplo: Programa que lee un numero entero que representa un mes (1 -> enero, 12->diciembre) y muestra el nombre del mes. l  Podríamos utilizar sentencias if-else anidadas, pero queda demasiado extenso.
  • 16. 16 Sentencia switch switch (selector) { case etiq_1: sentencia_1; … case etiq_n: sentencia_n; default: sentencia_n+1; } Comprueba si el valor del selector es el de la etiqueta etiq_1. Si no lo es comprueba etiq_2,… Si encuentra una etiqueta etiq_i que coincide con el valor del selector. A partir de ese momento ejecuta las sentencias desde sentencia_i hasta sentencia_n+1. En otro caso ejecuta la sentencia sentencia_n+1.
  • 17. 17 Sentencia switch-break switch (selector) { case etiq_1: sentencia_1; break; … case etiq_n: sentencia_n; break; default: sentencia_n+1; } Comprueba si el valor del selector es el de la etiqueta etiq_1. Si no lo es comprueba etiq_2,… Si encuentra una etiqueta etiq_i que coincide con el valor del selector ejecuta las sentencia sentencia_i. En otro caso ejecuta la sentencia sentencia_n+1
  • 18. 18 Ejemplo Programa que lee un número entero que representa un mes (1 -> enero, 12->diciembre) y muestra el nombre del mes.