SlideShare una empresa de Scribd logo
Estructuras Selectivas
• No necesariamente todos los programas deben
ejecutarse de esta forma secuencial, hay necesidad
de variar el flujo de control de un programa ya sea
para …
• Tomar decisiones (Selección) y/o
• Repetir un conjunto de instrucciones (Iteración)
Selección
• La sentencia de selección IF, permite tomar
decisiones en base a una condición lógica. Luego
decide qué sucederá en función al resultado. A esta
sentencia también se conoce como:
• Selección
• Condicional
• De decisión
Estructuras Selectivas
• La estructura selectiva permite que la
ejecución del programa se bifurque a una
instrucción (o conjunto) u otra/s, según un
criterio o condición lógica establecida, sólo
uno de los caminos en la bifurcación será el
tomado para ejecutarse.
3
Selección
• Por ejemplo, si un programa muestra un mensaje en
la pantalla que pregunta al usuario ”¿Desea seguir
adelante?”, obviamente, de la respuesta del usuario
dependerá la siguiente acción del programa.
• El programador debe escribir el código para las dos
posibilidades (sí y no), aunque cuando el programa
esté funcionando, sólo se elegirá una.
Sentencia if
La sentencia if permite decidir ejecutar o no una instrucción o un bloque de
instrucciones.
Sintaxis
if (condición)
Instrucción o bloque;
Un bloque es una secuencia de instrucciones englobadas entre llaves (“{}”).
La condición esta formada por una expresión booleana.
condición
sentencias
verdadero
falso
Ejemplo
#include <iostream.h>
main()
{
int x,y;
cout<<"n ingrese numero x:";
cin>>x;
cout<<"n ingrese numero y:";
cin>>y;
if(x==y) cout<<"n Son iguales";
if(x>y) cout<<"n X es Mayor";
if(x<y) cout<<"n Y es Mayor";
Return 0;
}
6
Ejercicio
• Determinar si un número es par
#include <iostream>
using namespace std;
int main(){
int x;
cout << "Cual es el número a evaluar? " <<endl;
cin>> x;
if (x%2==0) {
cout << "El numero "<<x<<" es Par" << endl;
}else{ cout << “El numero “<<x<<“ es Impar” << endl;}
system("pause");
return 0;
}
7
Selección complementaria:if..else
• Un if..else permite ejecutar un bloque si se
cumple la condición y otro si no se cumple.
• Sintaxis:
if (exp_condicional) bloque1
else bloque2
Esquema if...else
x>0
Bloque1
Resto de
instrucciones
Cierto(1)
Falso(0)
if...else
Bloque2
Selección Anidada
• Una construcción común de programación
que se basa en ifs anidados es la escalera de
if-else if, también conocida como la escalera if-
else if
10
Selección Anidada
• Se evalúan las expresiones condicionales de arriba hacia abajo. Tan
pronto como se encuentra una condición verdadera, se ejecuta la
instrucción asociada a él, y se omite el resto de la escalera.
• Si ninguna de las condiciones es verdadera, se ejecutará la
sentencia else final.
– La final más a menudo actúa como una condición predeterminada; es
decir, si todas las demás pruebas condicionales fallan, a continuación,
se realiza la última instrucción else.
• Si no hay al final otra else y todas las demás condiciones son falsas,
no llevará a cabo ninguna acción.
11
Si (condición)
sentencia1;
Sino Si (condición)
sentencia2;
Sino Si (condición)
sentencia3;
sino
sentencia4;
FinSi
Diagrama de Flujo
Condición
sí
sino
Condición Condición
sino
sino
Sentencia1 Sentencia4
Sentencia3
Sentencia2
sí sí
Pseudocodigo
Selección Anidada
1
Ejemplo:
Determinar si un número entero es par, impar o cero
Inicio
Leer N
Si(N %2=0) Entonces
Escribir “ ES PAR “;
Sino Si ~( N%2 =0) Entonces // diferente
Escribir “ ES IMPAR “;
Sino Escribir “ES CERO”;
FinSi
Fin
Selectiva anidada
1. Hacer un programa en C++ para una tienda de zapatos que tiene una promoción de
descuento para vender al mayor, esta dependerá del número de zapatos que se compren.
Si son más de diez, se les dará un 10% de descuento sobre el total de la compra; si el
número de zapatos es mayor de veinte pero menor de treinta, se le otorga un 20% de
descuento; y si son más treinta zapatos se otorgará un 40% de descuento. El precio de
cada zapato es de $80.
2. Hacer un programa en C++ para una tienda de helado da un descuento por compra
a sus clientes con membresía dependiendo de su tipo, sólo existen tres tipos de
membresía, tipo A, tipo B y tipo C. Los descuentos son los siguientes:
Tipo A 10% de descuento
Tipo B 15% de descuento
Tipo C 20% de descuento
3. Hacer un programa en C++ en el que 3 personas realizan una inversion y quien dio
el mayor porcentaje sera el dueño de la empresa el segundo quien mas dio, va ser el
gerente general y el tercero sera un inversor.
4. Hacer un programa en C++ para un supermercado donde pida el nombre, edad de
la persona y le calcule lo siguiente
precio de n productos maximo 4 minimo 1
calculo del sub total
calculo del subtotal con IVA 16%
descuento del 7% si la compra es mayor de 3,000.00
descuento del 10% si la compra es mayor de 5,000.00
descuento de tercera edad 10% (mas 60 años)
muestre un mensaje de "gracias por su compra"
Selección Multiple
• El conmutador proporciona para una rama de
opciones.
• De este modo, permite a un programa
seleccionar entre varias alternativas.
• A pesar de que una serie de if anidados
puede realizar pruebas de opciones, para
muchas situaciones, el switch es un enfoque
más eficiente.
18
Inconvenientes del switch
• Sólo se selecciona en base a la evaluación de
una única expresión.
• Los valores de cada case (caso) del switch
pueden ser resultado de una expresión, en ese
caso debe estar formada por lotes, por lo
tanto no se puede utilizar nombres de
variables.
• El resultado de las expresiones de cada case
deben ser números enteros.
Diagrama de Flujo
acción 1
expresión
acción 2 acción n
1
2
n
Segun (expresión) Hacer
caso1: acción1;
caso2: acción2;
.......................
casoP: acciónP;
De Otro Modo:
acciónPorDefault;
FinSegun
Las sentencias de cada case se ejecutan secuencialmente incluyendo
las de los otros casos, a menos que se use la sentencia break
Pseudocodigo
Estructuras de control
Selección Múltiple
• Ejemplo. Asignación de calificación
Inicio
Escribir “promedio final: ”;
Leer promedio;
Si (promedio es 6) entonces calificacion <-“NA”;
sino si (promedio es 7) entonces calificacion <- “S”;
sino si (promedio es 8) entonces calificacion = “B”;
sino si (promedio es 9) entonces calificacion <- “MB”;
sino si (promedio es 10) entonces calificacion <- “E”;
sino calificacion <- “R”;
Escribir “cal <- ”,calificacion;
Fin
Selectiva Multiple
switch(valor){
case 1 : Instrucciones
case 2 : Instrucciones
default: Instrucciones
}
22
Selección Multiple
• Realizar un programa que dados dos números
enteros, permita realizar las operaciones
básicas de manera excluyente.
• El ejercicio debe escribir la operación y el
resultado de la operación
23
Ejemplo. Selección de menú.
Inicio
Escribir “DICHOS:”;
Escribir “1. Para flojos”;
Escribir “2. Para dar ánimos”;
Escribir “3. De experiencia”;
Escribir “Opción: ”;
Leer(opcion);
Según (opcion) Hacer
1: Escribir “No por mucho madrugar amanece más temprano”;
2: Escribir “A darle que es mole de olla”;
3: escribe “Más sabe el diablo por viejo que por diablo”;
De otro Modo: Escribir “Opcion invalida”;
FinSegun
Fin
Selectiva Múltiple

Más contenido relacionado

PPTX
Clase 3_Prgramacion_estructurada450.pptx
PPTX
4. Elementos de programación estructurada.pptx
DOCX
Estructura Selectiva
PPTX
2ª unidad de algoritmo
PDF
Programación Orientada Objetos. Estructuras de control if, If else, switch.pdf
PDF
Ejemplo C++
PPTX
Estructuras secuenciales, selectivas e iterativas 01
Clase 3_Prgramacion_estructurada450.pptx
4. Elementos de programación estructurada.pptx
Estructura Selectiva
2ª unidad de algoritmo
Programación Orientada Objetos. Estructuras de control if, If else, switch.pdf
Ejemplo C++
Estructuras secuenciales, selectivas e iterativas 01

Similar a r90043.PPTX (20)

PPTX
Certificación java 6 cap 5
PPTX
Estructuras de Control
PPTX
Estructuras de Control - Ivan Walkes Mc.
DOCX
Selectivas
PDF
4.instrucciones de control en c++
PPT
Unidad3
PPT
Condiciones
PPT
Condiciones
PPT
Lenguaje de programacion C++ 3
PPT
Condiciones
PPT
Lenguajesdeprogramacion c nivel1-unidad3
PPT
Sentencia if else
 
PPT
Lenguajesdeprogramacion c nivel1-unidad3
PPTX
Estructuras de control
PPTX
Estructuras de control selectivas
PPTX
Estructuras de control
PPT
Scjp Jug Section 2 Flow Control
PDF
Estructuras de control
PDF
Estructuras de control. Secuencial, condicional y repetitivas..pdf
PDF
4.instrucciones de control en java
Certificación java 6 cap 5
Estructuras de Control
Estructuras de Control - Ivan Walkes Mc.
Selectivas
4.instrucciones de control en c++
Unidad3
Condiciones
Condiciones
Lenguaje de programacion C++ 3
Condiciones
Lenguajesdeprogramacion c nivel1-unidad3
Sentencia if else
 
Lenguajesdeprogramacion c nivel1-unidad3
Estructuras de control
Estructuras de control selectivas
Estructuras de control
Scjp Jug Section 2 Flow Control
Estructuras de control
Estructuras de control. Secuencial, condicional y repetitivas..pdf
4.instrucciones de control en java
Publicidad

Más de Jesus Figeroa Cardenaz (20)

PPT
IntrDecisiones_toma-de-desiciones-y -su-funcion.ppt
PPT
estad_uma_01_bioestadistica_y_su_introduccion.ppt
PPT
Población-y-muestra_para la estadistica.ppt
PPT
estadistica_bsica_Relacionadas a los conceptos basicos11.ppt
PPTX
bioinformtica-151201072811-lva1-app6892.pptx
PPTX
computadoras y su forma de programar.pptx
PPTX
powert point lms_funciones del imss y sus usos.pptx
PPTX
Sistemas-Distribuidos_y_sus funciones.pptx
PPTX
Clase1_SO(definicion de los sistemas operativos y su funcion).pptx
PPTX
clase2_Controldeflujo_de_estructuras.pptx
PPT
estad_uma_01_bioestadistica1204568098.ppt
PPTX
Clase2_Efectofotoelectricobasado en laquimica.pptx
PPTX
Clase2ejfifrjf0jfi0ji0ji0j0igj5i0gj5i0gj5i.pptx
PPTX
Clase 1.okwekpekcpejokjefkojeojejejfijeijeijpptx
PPT
T12_APD-inferencia-estadisticas-aplicada.ppt
PPTX
tarea de informatica Oliver eduardo gonzalez lopez.pptx
PPTX
RIS-PACS y su importancia en la informatica medica
PPTX
intranet medica. j. itzel serrano juarez.pptx
PDF
pubmedbasics.pdf
IntrDecisiones_toma-de-desiciones-y -su-funcion.ppt
estad_uma_01_bioestadistica_y_su_introduccion.ppt
Población-y-muestra_para la estadistica.ppt
estadistica_bsica_Relacionadas a los conceptos basicos11.ppt
bioinformtica-151201072811-lva1-app6892.pptx
computadoras y su forma de programar.pptx
powert point lms_funciones del imss y sus usos.pptx
Sistemas-Distribuidos_y_sus funciones.pptx
Clase1_SO(definicion de los sistemas operativos y su funcion).pptx
clase2_Controldeflujo_de_estructuras.pptx
estad_uma_01_bioestadistica1204568098.ppt
Clase2_Efectofotoelectricobasado en laquimica.pptx
Clase2ejfifrjf0jfi0ji0ji0j0igj5i0gj5i0gj5i.pptx
Clase 1.okwekpekcpejokjefkojeojejejfijeijeijpptx
T12_APD-inferencia-estadisticas-aplicada.ppt
tarea de informatica Oliver eduardo gonzalez lopez.pptx
RIS-PACS y su importancia en la informatica medica
intranet medica. j. itzel serrano juarez.pptx
pubmedbasics.pdf
Publicidad

Último (20)

PPTX
MODULO 2. METODOLOGIAS PARA ANALISIS DE RIESGOS 2da Parte.pptx
PDF
Oficio SEC de formulación de cargos por el apagón del 25F en contra del CEN
PDF
NORMATIVA Y DESCRIPCION ALCANTARILLADO PLUVIAL.pdf
PPTX
Gestion de seguridad y salud ocupacional.pptx
PPTX
Presentación - Taller interpretación iso 9001-Solutions consulting learning.pptx
PDF
Electricidad-Estatica-Peligros-Prevencion.pdf
PDF
CALIDAD SSOMA AMBIENTE PRL UNIVERSIDADDD
PDF
fulguracion-medicina-legal-418035-downloable-2634665.pdf lesiones por descarg...
PPTX
GEOLOGIA, principios , fundamentos y conceptos
PPT
PRIMEROS AUXILIOS EN EL SECTOR EMPRESARIAL
PDF
prg2_t01_p01_Fundamentos POO - parte1.pdf
PPTX
1 CONTAMINACION AMBIENTAL EN EL PLANETA.pptx
PDF
SEC formula cargos al Consejo Directivo del Coordinador y a ocho eléctricas p...
PDF
Sustitucion_del_maiz_por_harina_integral_de_zapall.pdf
PPTX
NILS actividad 4 PRESENTACION.pptx pppppp
PDF
HISTORIA DE LA GRÚAA LO LARGO DE LOS TIEMPOSpdf
PPTX
Manual ISO9001_2015_IATF_16949_2016.pptx
PDF
Oficio SEC 293416 Comision Investigadora
PDF
S15 Protección de redes electricas 2025-1_removed.pdf
PPTX
Notificacion e investigación de incidentes y accidentes de trabajo.pptx
MODULO 2. METODOLOGIAS PARA ANALISIS DE RIESGOS 2da Parte.pptx
Oficio SEC de formulación de cargos por el apagón del 25F en contra del CEN
NORMATIVA Y DESCRIPCION ALCANTARILLADO PLUVIAL.pdf
Gestion de seguridad y salud ocupacional.pptx
Presentación - Taller interpretación iso 9001-Solutions consulting learning.pptx
Electricidad-Estatica-Peligros-Prevencion.pdf
CALIDAD SSOMA AMBIENTE PRL UNIVERSIDADDD
fulguracion-medicina-legal-418035-downloable-2634665.pdf lesiones por descarg...
GEOLOGIA, principios , fundamentos y conceptos
PRIMEROS AUXILIOS EN EL SECTOR EMPRESARIAL
prg2_t01_p01_Fundamentos POO - parte1.pdf
1 CONTAMINACION AMBIENTAL EN EL PLANETA.pptx
SEC formula cargos al Consejo Directivo del Coordinador y a ocho eléctricas p...
Sustitucion_del_maiz_por_harina_integral_de_zapall.pdf
NILS actividad 4 PRESENTACION.pptx pppppp
HISTORIA DE LA GRÚAA LO LARGO DE LOS TIEMPOSpdf
Manual ISO9001_2015_IATF_16949_2016.pptx
Oficio SEC 293416 Comision Investigadora
S15 Protección de redes electricas 2025-1_removed.pdf
Notificacion e investigación de incidentes y accidentes de trabajo.pptx

r90043.PPTX

  • 1. Estructuras Selectivas • No necesariamente todos los programas deben ejecutarse de esta forma secuencial, hay necesidad de variar el flujo de control de un programa ya sea para … • Tomar decisiones (Selección) y/o • Repetir un conjunto de instrucciones (Iteración)
  • 2. Selección • La sentencia de selección IF, permite tomar decisiones en base a una condición lógica. Luego decide qué sucederá en función al resultado. A esta sentencia también se conoce como: • Selección • Condicional • De decisión
  • 3. Estructuras Selectivas • La estructura selectiva permite que la ejecución del programa se bifurque a una instrucción (o conjunto) u otra/s, según un criterio o condición lógica establecida, sólo uno de los caminos en la bifurcación será el tomado para ejecutarse. 3
  • 4. Selección • Por ejemplo, si un programa muestra un mensaje en la pantalla que pregunta al usuario ”¿Desea seguir adelante?”, obviamente, de la respuesta del usuario dependerá la siguiente acción del programa. • El programador debe escribir el código para las dos posibilidades (sí y no), aunque cuando el programa esté funcionando, sólo se elegirá una.
  • 5. Sentencia if La sentencia if permite decidir ejecutar o no una instrucción o un bloque de instrucciones. Sintaxis if (condición) Instrucción o bloque; Un bloque es una secuencia de instrucciones englobadas entre llaves (“{}”). La condición esta formada por una expresión booleana. condición sentencias verdadero falso
  • 6. Ejemplo #include <iostream.h> main() { int x,y; cout<<"n ingrese numero x:"; cin>>x; cout<<"n ingrese numero y:"; cin>>y; if(x==y) cout<<"n Son iguales"; if(x>y) cout<<"n X es Mayor"; if(x<y) cout<<"n Y es Mayor"; Return 0; } 6
  • 7. Ejercicio • Determinar si un número es par #include <iostream> using namespace std; int main(){ int x; cout << "Cual es el número a evaluar? " <<endl; cin>> x; if (x%2==0) { cout << "El numero "<<x<<" es Par" << endl; }else{ cout << “El numero “<<x<<“ es Impar” << endl;} system("pause"); return 0; } 7
  • 8. Selección complementaria:if..else • Un if..else permite ejecutar un bloque si se cumple la condición y otro si no se cumple. • Sintaxis: if (exp_condicional) bloque1 else bloque2
  • 10. Selección Anidada • Una construcción común de programación que se basa en ifs anidados es la escalera de if-else if, también conocida como la escalera if- else if 10
  • 11. Selección Anidada • Se evalúan las expresiones condicionales de arriba hacia abajo. Tan pronto como se encuentra una condición verdadera, se ejecuta la instrucción asociada a él, y se omite el resto de la escalera. • Si ninguna de las condiciones es verdadera, se ejecutará la sentencia else final. – La final más a menudo actúa como una condición predeterminada; es decir, si todas las demás pruebas condicionales fallan, a continuación, se realiza la última instrucción else. • Si no hay al final otra else y todas las demás condiciones son falsas, no llevará a cabo ninguna acción. 11
  • 12. Si (condición) sentencia1; Sino Si (condición) sentencia2; Sino Si (condición) sentencia3; sino sentencia4; FinSi Diagrama de Flujo Condición sí sino Condición Condición sino sino Sentencia1 Sentencia4 Sentencia3 Sentencia2 sí sí Pseudocodigo Selección Anidada
  • 13. 1 Ejemplo: Determinar si un número entero es par, impar o cero Inicio Leer N Si(N %2=0) Entonces Escribir “ ES PAR “; Sino Si ~( N%2 =0) Entonces // diferente Escribir “ ES IMPAR “; Sino Escribir “ES CERO”; FinSi Fin Selectiva anidada
  • 14. 1. Hacer un programa en C++ para una tienda de zapatos que tiene una promoción de descuento para vender al mayor, esta dependerá del número de zapatos que se compren. Si son más de diez, se les dará un 10% de descuento sobre el total de la compra; si el número de zapatos es mayor de veinte pero menor de treinta, se le otorga un 20% de descuento; y si son más treinta zapatos se otorgará un 40% de descuento. El precio de cada zapato es de $80.
  • 15. 2. Hacer un programa en C++ para una tienda de helado da un descuento por compra a sus clientes con membresía dependiendo de su tipo, sólo existen tres tipos de membresía, tipo A, tipo B y tipo C. Los descuentos son los siguientes: Tipo A 10% de descuento Tipo B 15% de descuento Tipo C 20% de descuento
  • 16. 3. Hacer un programa en C++ en el que 3 personas realizan una inversion y quien dio el mayor porcentaje sera el dueño de la empresa el segundo quien mas dio, va ser el gerente general y el tercero sera un inversor.
  • 17. 4. Hacer un programa en C++ para un supermercado donde pida el nombre, edad de la persona y le calcule lo siguiente precio de n productos maximo 4 minimo 1 calculo del sub total calculo del subtotal con IVA 16% descuento del 7% si la compra es mayor de 3,000.00 descuento del 10% si la compra es mayor de 5,000.00 descuento de tercera edad 10% (mas 60 años) muestre un mensaje de "gracias por su compra"
  • 18. Selección Multiple • El conmutador proporciona para una rama de opciones. • De este modo, permite a un programa seleccionar entre varias alternativas. • A pesar de que una serie de if anidados puede realizar pruebas de opciones, para muchas situaciones, el switch es un enfoque más eficiente. 18
  • 19. Inconvenientes del switch • Sólo se selecciona en base a la evaluación de una única expresión. • Los valores de cada case (caso) del switch pueden ser resultado de una expresión, en ese caso debe estar formada por lotes, por lo tanto no se puede utilizar nombres de variables. • El resultado de las expresiones de cada case deben ser números enteros.
  • 20. Diagrama de Flujo acción 1 expresión acción 2 acción n 1 2 n Segun (expresión) Hacer caso1: acción1; caso2: acción2; ....................... casoP: acciónP; De Otro Modo: acciónPorDefault; FinSegun Las sentencias de cada case se ejecutan secuencialmente incluyendo las de los otros casos, a menos que se use la sentencia break Pseudocodigo Estructuras de control Selección Múltiple
  • 21. • Ejemplo. Asignación de calificación Inicio Escribir “promedio final: ”; Leer promedio; Si (promedio es 6) entonces calificacion <-“NA”; sino si (promedio es 7) entonces calificacion <- “S”; sino si (promedio es 8) entonces calificacion = “B”; sino si (promedio es 9) entonces calificacion <- “MB”; sino si (promedio es 10) entonces calificacion <- “E”; sino calificacion <- “R”; Escribir “cal <- ”,calificacion; Fin Selectiva Multiple
  • 22. switch(valor){ case 1 : Instrucciones case 2 : Instrucciones default: Instrucciones } 22
  • 23. Selección Multiple • Realizar un programa que dados dos números enteros, permita realizar las operaciones básicas de manera excluyente. • El ejercicio debe escribir la operación y el resultado de la operación 23
  • 24. Ejemplo. Selección de menú. Inicio Escribir “DICHOS:”; Escribir “1. Para flojos”; Escribir “2. Para dar ánimos”; Escribir “3. De experiencia”; Escribir “Opción: ”; Leer(opcion); Según (opcion) Hacer 1: Escribir “No por mucho madrugar amanece más temprano”; 2: Escribir “A darle que es mole de olla”; 3: escribe “Más sabe el diablo por viejo que por diablo”; De otro Modo: Escribir “Opcion invalida”; FinSegun Fin Selectiva Múltiple