1-Estructuras de Control
-
Upload
gtorrealba -
Category
Documents
-
view
2.124 -
download
1
description
Transcript of 1-Estructuras de Control
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 1/17
Universidad Centroccidental “Lisandro Alvarado” Decanato de Ciencias y Tecnología
Análisis de SistemasDepartamento de Sistemas
Programación
Elementos Básicos delLenguaje C++(Continuación…)
Coordinación del Área de Programación
Lapso 2012-1
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 2/17
Elementos Básicos de C++
Agenda
Estructuras de Control
o Secuencial
o Selectiva o Condicional
o Repetitivas
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 3/17
Estructuras de Control
Son aquellas que le permiten al programadorespecificar que la próxima instrucción a ejecutarseno necesariamente está en la línea que sigue, sinoque puede cambiar el orden de ejecución otransferir el control a otra sentencia.
• Las instrucciones se ejecutan una trasotra.Secuencial
• Se utiliza para que el programa elija entrecursos de acción alternativos. Selectivas
• Permiten repetir conjuntos deinstrucciones. Una condición de controlestablece las veces que se ejecuta unainstrucción repetitiva.
Repetitivas
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 4/17
Estructuras de Control Selectivas
Sentencia if• Permite elegir entre dos alternativas en base al valor de
una expresión booleana.
if (<expres_bool>) <sentencia>
if (<expres_bool>)
<sentencia>
else
<sentencia>
if (<expres_bool>){ <sentencia 1> ::::: <sentencia n> }
if (<expres_bool>){ <sentencia 1>
:::::
<sentencia n> }else { <sentencia 1> :::::
<sentencia n>
}
if
Caso 1
Caso 2
Caso 3
Caso 4
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 5/17
Estructuras de Control Selectivas
Ejemplos Selectivas if Anidadas if (nota == 10)
m ensaje = “Excelente";
else
if (nota >= 9) mensaje = "Sobresaliente";
else
if (nota >= 7)
mensaje = "Notable";
elseif (nota >= 5)
mensaje = "Aprobado";
else
mensaje = "Suspenso";
if (nota == 10)
mensaje = “Excelente";
else if (nota >= 9)
mensaje = "Sobresaliente";
else if (nota >= 7)
mensaje = "Notable";
else if (nota >= 5)
mensaje = "Aprobado";
else
mensaje = "Suspenso";
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 6/17
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>; ]
}
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 7/17
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";
}
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 8/17
Estructuras de Control Repetitivas
Permite que una sentencia o varias sentencias seejecuten un número determinado de veces.También conocidas como bucles, ciclos o lazos.
• La sentencia o grupo de sentencias que serepiten se llaman cuerpo del bucle
• Cada repetición del cuerpo del bucle se llamaiteración del bucle.
Entre las principales estructuras Repetitivas tenemos:
while do-while for
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 9/17
Estructuras de Control RepetitivasSentencia 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) serepite mientras la condición del bucle permanece verdadera y terminacuando 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;
while (condición)
{
Sentencia 1;
Sentencia 2;
:::::::::::::::::::
Sentencia N;
}
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 10/17
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 suma, nota, 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;
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 11/17
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 dela(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{
Sentencia;
}while (condición);
do{
Sentencia 1;
Sentencia 2;::::::::::::::::::::Sentencia N;
} while (condición);
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 12/17
Estructuras de Control Repetitivas
Ejemplos de la Sentencias do-whileint 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;
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 13/17
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 deejecutar, mientras sea verdadera.
• Incrementa o decrementa la variable de control del bucle.
for (inicializacion; condicion iteración; incremento )
{
conjunto de sentencias;
}
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 14/17
Estructuras de Control RepetitivasEjemplos 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
for (int i=0; i<10; i++)
cout << i;
int i = 0;
while (i < 10)
{
cout << i << endl;
++i;
}
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 15/17
Estructuras de Control RepetitivasComparación entre las sentencias for, while y do-while
while for do-w
La condición se
chequea antes de entrar al
bucle, si la evaluaciónresulta verdadera se
ejecutan las sentencias.
El bucle finaliza
cuando la condición es
falsa
Se ejecuta cero o más
veces, por ser de tipo pre-
test
Se recomienda
cuando el número de
repeticiones se conocepor anticipado.
Es controlado por
un contador.
En una misma línea
contiene variasinstrucciones.
Es adecuada cuando se
debe asegurar que al
menos se ejecute el bucleuna vez.
La condición del bucle
se chequea después de
que se ha(n) ejecutado
la(s) sentencia(s).
Las sentencias se
repiten mientras la
condición sea verdadera.
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 16/17
Ejercicios Prácticos
Enunciados Sentencias1.- Leer tres números y determinar elmayor de ellos.
swicth
2.- Se conoce el número de notas aprocesar. Se desea saber el total de las
notas.
do-while
3.- Un restaurant desea mostrar a susclientes los menús de cada día.
if y operadores lógicos
4.- Una Librería desea registrar al día almenos un usuario.
while
5.- Una cafetería le da recibo a sus clientessiempre y cuando ellos la registren. Al finaldel día desean saber cuantos recibosemitieron.
if y operadores relacionales
6.-Dada la nota final de un alumnodeterminar si esta aprobado o reprobado. for
Determinar ¿Cual secuencia está asociada al enunciado?
5/14/2018 1-Estructuras de Control - slidepdf.com
http://slidepdf.com/reader/full/1-estructuras-de-control 17/17
Asignaciones Próxima Semana
Repasar lo visto en Clase.
Realizar la Autoevaluación de laGuía Didáctica Elementos Básicosdel Lenguaje C++.
Realizar Ejercicios Propuestos.