Estructuras de control
selectivas y repetitivas
Estructuras de control selectivas
• Las estructuras de control selectivas, o de decisión, nos
servirán para la toma de decisiones. Es decir, en base a
una expresión lógica, elegir qué bloque de instrucciones
realizar.
• Antes veamos lo que es una expresión lógica . Una
expresión lógica es una expresión cuyo resultado es un
valor lógico (verdadero o falso). Por ejemplo :
• 3<5 : verdadero
• !(5<=5) = negación de la verdad : falso
• 3>5 && 5<=5 = falso Y verdad : falso
• 3>5 || 5<=5 = falso O verdad : verdad
• 3==3 : verdad
• OJO: No confundir el símbolo “=” (asignación) con el
“==” (igualdad). El símbolo “==” (doble igual)
significa equivalencia, y sirve en las expresiones lógicas
para indicar si existe alguna igualdad.
Estructura de control selectiva
simple
• Lo primero que hace es evaluar la expresión lógica que
está entre los paréntesis y si resulta verdadera realizará
la serie de acciones o instrucciones.
Estructura de control selectiva doble
• Evalúa primero la expresión lógica que está entre los
paréntesis y si resulta verdadera realizará el primer
grupo de acciones, en caso de que sea falso realizará el
segundo grupo de acciones.
Estructura de control selectiva
múltiple
• Utiliza una variable, y en caso de tomar el valor de 1
realizará el caso 1, si tiene el valor de 2 realizará el caso
2.
Estructura de control selectiva
simple: (si… -if)
• La estructura de control selectiva simple if (si) evaluará
una expresión lógica, y en caso de que sea verdadero
se realizará las instrucciones dentro de su bloque de
instrucciones.
Estructura de control selectiva
doble:
(si…sino - if else)
• La estructura de control selectiva doble if – else ( si –
sino) evaluará una expresión lógica y en caso de que
sea verdadera se realizará las instrucciones dentro del
primer bloque (bloque if), y en caso de que sea falso se
realizarán las instrucciones dentro del segundo bloque
(bloque else).
Ejemplo
Nota
• Es posible anidar
las estructuras
simples y
dobles, es decir,
se puede poner
un if junto con
un else. Veamos
un programa de
ejemplo:
Estructura de control selectiva
múltiple:
(switch … case)
• Esta estructura de control trabaja con alguna variable, y
según su valor realizará “x” caso.
• variable : Solo puede ser numérica entera o un caracter (como indica en la imagen).
• case : Caso, indica el valor que de ser igual que variable, se ejecutarán las acciones en
ese caso. Las acciones empiezan en los dos puntos (:) y termina en la instrucción break.
• break: Romper, sirve para finalizar un bucle o la estructura de control envolvente ( en
este caso el switch ), es decir, una vez que se entre a uno de los case solo podrá finalizar
cuando encuentre al primer break.
• default: En caso de que ninguno de los case anteriores se haya cumplido, se ejecutarán
las acciones de default. No es necesario que el switch contenga el default.
• OJO: En caso de no poner la instrucción break; al finalizar el grupo de instrucciones de un
case, se realizarán TODOS los grupos de instrucciones desde el case que entró hasta que
encuentre un break o finalice todo el switch.
Ejemplo
Estructura de control repetitivas
• Las estructuras de control repetitiva nos servirán para
repetir un cierto bloque de instrucciones mientras una
condición se esté cumpliendo.
Tipos de estructuras de control
repetitivas
• Existen 3 estructuras de control repetitivas:
• Mientras,
• Hacer – Mientras, y
• Para.
Estructura Mientras
• Se repetirá todo el bloque de instrucciones mientras la
expresión lógica sea verdadera.
• Es considerada una estructura de PRE – CONDICIÓN, esto
quiere decir que para la expresión lógica es analizada antes
de realizar por primera vez el bloque de instrucciones.
• La inicialización, es donde podemos inicializar una variable que fue declarada
fuera del for, que se utilizará cómo contador, o, podemos declarar e inicializar
en esa misma sección una variable nueva que será usada como contador.
• Máximo o mínimo, es la condición que se debe cumplir para que el ciclo for
se siga cumpliendo. Normalmente es poniendo un límite al valor que puede
alcanzar el contador.
• Incremento o decremento, indica cómo ira aumentando o disminuyendo el
contador. Hay que tener cuidado de no cometer errores al indicar si el valor
aumentará o disminuirá. Por ejemplo si indicamos que el contador inicie en 10
y mínimo valor será 1, y nosotros por error indicamos que el contador aumente
su valor en vez de disminuir, el ciclo entrará en un bucle infinito y nunca
terminará.
Estructura Hacer - mientras
• A diferencias del “Mientras”, es considerada una estructura POST –
CONDICIÓN, esto quiere decir que la expresión lógica es analizada
después de realizar por primera vez el bloque de instrucciones.
• En pocas palabras, un hacer mientras siempre se ejecutará por lo
menos una vez.
Estructura Para
• Es la estructura más compleja de todas.
• Funciona usando un contador, es decir una simple
variable que irá aumentando o disminuyendo su valor
(generalmente de 1 en 1) y una vez que llegue a su
máximo o mínimo dejará de repetir el bloque de
instrucciones.
Acumuladores y Contadores
• Los acumuladores son variables numéricas que se usarán para ir
acumulando distintos valores, se dividen en 2: Acumuladores de Suma y
acumuladores de producto.
• Los acumuladores de suma son inicializadas en 0 (var = 0) y guardarán
resultados de sumas.
• Los acumuladores de producto son inicializadas en 1 (var =1) y guardarán el
resultado de productos. Ojo, no confundir e inicializar el acumulador de un
producto en 0, ya que si inicializamos en 0 siempre dará como resultado 0.
• Los contadores son variables numéricas que irán aumentando su valor de 1
en 1 ( o según necesitemos) y son inicializadas generalmente en 0;
La estructura mientras en C++:
while
La estructura Hacer- mientras en C+
+:
Do - while
La estructura para en C++: for
Nota para for
• Como se dio es la estructura más compleja de todas pues se divide en 3 secciones ( separadas por
punto y coma).
• La inicialización, es donde podemos inicializar una variable que fue declarada fuera del for, que
se utilizará cómo contador, o, podemos declarar e inicializar en esa misma sección una variable
nueva que será usada como contador.
• Máximo o mínimo, es la condición que se debe cumplir para que el ciclo for se siga cumpliendo.
Normalmente es poniendo un límite al valor que puede alcanzar el contador.
• Incremento o decremento, indica cómo ira aumentando o disminuyendo el contador. Hay que
tener cuidado de no cometer errores al indicar si el valor aumentará o disminuirá. Por ejemplo si
indicamos que el contador inicie en 10 y mínimo valor será 1, y nosotros por error indicamos que
el contador aumente su valor en vez de disminuir, el ciclo entrará en un bucle infinito y nunca
terminará.
• Algo muy importante debe quedar en claro: entender
que las 3 estructuras cumplen la misma función, por lo
tanto, podemos realizar lo mismo con cualquiera de las
3 estructuras.
• Sin embargo, con algunas nos será más fácil realizar
algunas cosas que con las demás estructuras.
Algunos ejemplos clásicos
• Menú por consola.
• Validar datos
Menú por consola
Validar datos