clases de dinamica ejercicios preuniversitarios.pdf
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
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