Está en la página 1de 16

Universidad Centroccidental “Lisandro Alvarado”

Decanato de Ciencias y Tecnología


*/45*5650%&&%6$"$*0/461&3*03
Análisis de Sistemas
1&%"(0(*$016#-*$0#".#"."3$"
Departamento de Sistemas
Programación

Elementos Básicos del


Lenguaje C++
(Continuación…)

Coordinación del Área de Programación


Lapso 2013-1
Elementos Básicos de C++
Agenda
Estructuras de Control
o Secuencial
o Selectiva o Condicional
o Repetitivas
Estructuras de Control
Son aquellas que le permiten al programador
especificar que la próxima instrucción a ejecutarse
no necesariamente está en la línea que sigue, sino
que puede cambiar el orden de ejecución o
transferir el control a otra sentencia.

• Las instrucciones se ejecutan una tras


Secuencial otra.

• Se utiliza para que el programa elija entre


Selectivas cursos de acción alternativos.

• Permiten repetir conjuntos de


instrucciones. Una condición de control
Repetitivas establece las veces que se ejecuta una
instrucción repetitiva.
Estructuras de Control Selectivas
Sentencia if
• Permite elegir entre dos alternativas en base al valor de
una expresión booleana.
Caso 1 if (<expres_bool>)
if (<expres_bool>) <sentencia>
<sentencia> else
<sentencia>
Caso 2
Caso 3 if if (<expres_bool>){
<sentencia 1>
if (<expres_bool>){ :::::
<sentencia n>
<sentencia 1> }else {
::::: <sentencia 1>
:::::
<sentencia n> Caso 4 <sentencia n>
} }
Estructuras de Control Selectivas
Ejemplos Selectivas if Anidadas
if (nota == 10)
return “Excelente"; if (nota == 10)
else return “Excelente";
if (nota >= 9) else if (nota >= 9)
return "Sobresaliente"; return
else "Sobresaliente";
if (nota >= 7) else if (nota >= 7)
return "Notable"; return "Notable";
else else if (nota >= 5)
if (nota >= 5) return "Aprobado";
return "Aprobado"; else
else return "Suspenso";
return "Suspenso";
Estructuras de Control Selectivas
Condicional switch
• Se utiliza para hacer una selección entre múltiples
alternativas.
• La sintaxis es la siguiente:

switch ( <expresion> ) {
case <const1> : <sentencia1>; break;
case <const2> : <sentencia2>; break;
.
.
.
case <constN> : <sentenciaN>; break;
[default : <sentenciaD>; ]
}
Estructuras de Control Selectivas
Ejemplo de la Selectiva switch
• El siguiente extracto de programa guarda un mensaje indicando si lo que
contiene la variable caracter es una vocal, un número u otro carácter:
char caracter;
::: // de alguna manera caracter toma un valor
switch (caracter) {
case „0‟: case „1‟: case „2‟: case „3‟: case „4‟:
case „5‟: case „6‟: case „7‟: case „8‟: case „9‟:
mensaje = "Dígito";
break;
case „a‟: case „e‟: case „i‟: case „o‟: case „u‟:
case „A‟: case „E‟: case „I‟: case „O‟: case „U‟:
mensaje = "Vocal";
break;
default:
mensaje = "Otro carácter";
}
Estructuras de Control Repetitivas
Permite que una sentencia o varias sentencias se
ejecuten un número determinado de veces.
También conocidas como bucles, ciclos o lazos.
• La sentencia o grupo de sentencias que se
repiten se llaman cuerpo del bucle
• Cada repetición del cuerpo del bucle se llama
iteración del bucle.

Entre las principales estructuras Repetitivas tenemos:

do-
while for
while
Estructuras de Control Repetitivas
Sentencia while
• Un bucle while tiene una condición de control (expresión lógica) que
indica la cantidad de repetición. La ejecución de la(s) sentencia(s) se
repite mientras la condición del bucle permanece verdadera y termina
cuando sea falsa.
• Primero se pregunta y luego se ejecuta.
• Es un bucle Pre Test, es decir, se ejecuta cero ó más veces.

while (condición)
{
Sentencia 1;
while (condición)
Sentencia 2;
Sentencia;
:::::::::::::::::::
Sentencia N;
}
Estructuras de Control Repetitivas
Ejemplo de la Sentencia while
• El siguiente extracto de programa calcula y muestra la nota
promedio de un estudiante.
char resp;
int nota, suma=0, n = 0;
cout << “Hay datos: ”;
cin >> resp;
while (resp == „s‟){
cout << “Nota : ”;
cin >> nota;
suma += nota;
n++;
cout << “Hay mas datos: ”; cin >> resp;
}
cout << “El promedio de notas es:” << suma/n << endl;
Estructuras de Control Repetitivas
Sentencia do-while
• Se utiliza para especificar un bucle condicional que se ejecuta al menos
una vez. Si la condición es verdadera, entonces se repite la ejecución de
la(s) sentencia(s), este proceso continúa hasta que la condición sea falsa.
• Primero se ejecuta y luego se pregunta.
• Es un bucle Post Test, es decir, se ejecuta una ó más veces.

do{
do
Sentencia 1;
Sentencia; Sentencia 2;
::::::::::::::::::::
while (condición); Sentencia N;
}
while (condición);
Estructuras de Control Repetitivas
Ejemplos de la Sentencias do-while
int pot=50;
do {
pot = pot * 2;
cout << “La potencia obtenida es:” <<pot<< endl;
} while (pot < 500);

char resp;
int suma, nota, n = 0;
do {
cout << “Nota : ”; cin >> nota;
suma += nota; n++;
cout << “Hay mas datos: ”; cin >> resp;
} while (resp == „s‟);
cout << “El promedio de notas es:” << suma/n << endl;
Estructuras de Control Repetitivas
Sentencia for
• Es un método para ejecutar un bloque de sentencias un número
fijo de veces, ya que en el encabezado permite especificar todo.
• Se debe inicializar la variable de control del bucle
• La expresión lógica determina si las sentencias se han de
ejecutar, mientras sea verdadera.
• Incrementa o decrementa la variable de control del bucle.

for (inicializacion; condicion iteración; incremento )


{
conjunto de sentencias;
}
Estructuras de Control Repetitivas
Ejemplos de Sentencias for

for ( int count = 1; count <= 5; count ++)


cout<< “Valor obtenido es: ” << 2 * count << endl;

Una sentencia for se puede reescribir como una sentencia while

int i = 0;
while (i < 10)
for (int i=0; i<10; i++) {
cout << i; cout << i << endl;
++i;
}
Ejercicios Prácticos
Determinar ¿Cual secuencia está asociada al enunciado?
Enunciados Sentencias
1.- Leer tres números y determinar el
swicth
mayor de ellos.
2.- Se conoce el número de notas a
procesar. Se desea saber el total de las do-while
notas.
3.- Un restaurant desea mostrar a sus
if y operadores lógicos
clientes los menús de cada día.
4.- Una Librería desea registrar al día al
while
menos un usuario.
5.- Una cafetería le da recibo a sus clientes
siempre y cuando ellos la registren. Al final if y operadores relacionales
del día desean saber cuantos recibos
emitieron.
6.-Dada la nota final de un alumno
determinar si esta aprobado o reprobado. for
Referencias Bibliográficas

• JOYANES, L y ZAHONERO, I. 2010.


Programación en C, C++, JAVA y UML. Mc
Graw Hill, Interamericana Editores, S.A. DE
C.V.
• JOYANES, L. 2006. Programación en C++.
Algoritmos, estructuras de datos y objetos.
2a Edición. Mc Graw Hill, Interamericana de
España, S.A.U.

También podría gustarte