Universidad Centroccidental “Lisandro Alvarado”
Decanato de Ciencias y Tecnología
Análisis de Sistemas
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
Elementos Básicos de C++
UNIDAD I. Segunda Parte
Objetivo General
Implementar secuencia de instrucciones en un lenguaje
de programación, utilizando los elementos básicos y las
estructuras de flujos de control.
Objetivos Específicos
• Reconocer el funcionamiento de las estructuras de flujo
de control, para desarrollar instrucciones de
programación.
• Implementar secuencia de instrucciones de
programación, utilizando los elementos básicos, los
operadores, expresiones y las estructuras de flujo de
control de un lenguaje de programación.
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
otra.Secuencial
• Se utiliza para que el programa elija entre
cursos de acción alternativos.Selectivas
• Permiten repetir conjuntos de
instrucciones. Una condición de control
establece las veces que se ejecuta una
instrucción repetitiva.
Repetitivas
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
Estructuras de Control Selectivas
Ejemplos Selectivas if Anidadas
if (nota == 10)
return “Excelente";
else
if (nota >= 9)
return "Sobresaliente";
else
if (nota >= 7)
return "Notable";
else
if (nota >= 5)
return "Aprobado";
else
return "Suspenso";
if (nota == 10)
return “Excelente";
else if (nota >= 9)
return
"Sobresaliente";
else if (nota >= 7)
return "Notable";
else if (nota >= 5)
return "Aprobado";
else
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:
while
do-
while
for
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;
while (condición)
{
Sentencia 1;
Sentencia 2;
:::::::::::::::::::
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
Sentencia;
while (condición);
do{
Sentencia 1;
Sentencia 2;
::::::::::::::::::::
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
for (int i=0; i<10; i++)
cout << i;
int i = 0;
while (i < 10)
{
cout << i << endl;
++i;
}
Ejercicios Prácticos
Enunciados Sentencias
1.- Leer tres números y determinar el
mayor de ellos.
swicth
2.- Se conoce el número de notas a
procesar. Se desea saber el total de las
notas.
do-while
3.- Un restaurant desea mostrar a sus
clientes los menús de cada día.
if y operadores lógicos
4.- Una Librería desea registrar al día al
menos un usuario.
while
5.- Una cafetería le da recibo a sus clientes
siempre y cuando ellos la registren. Al final
del día desean saber cuantos recibos
emitieron.
if y operadores relacionales
6.-Dada la nota final de un alumno
determinar si esta aprobado o reprobado. for
Determinar ¿Cual secuencia está asociada al enunciado?
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.
Asignaciones Próxima Semana
Repasar lo visto en Clase.
Realizar la Autoevaluación de la
Guía Didáctica Elementos Básicos
del Lenguaje C++.
Realizar Ejercicios Propuestos.

Clase 2 Estructuras de Control

  • 1.
    Universidad Centroccidental “LisandroAlvarado” Decanato de Ciencias y Tecnología Análisis de Sistemas Departamento de Sistemas Programación Elementos Básicos del Lenguaje C++ (Continuación…) Coordinación del Área de Programación Lapso 2013-1
  • 2.
    Elementos Básicos deC++ Agenda Estructuras de Control o Secuencial o Selectiva o Condicional o Repetitivas
  • 3.
    Elementos Básicos deC++ UNIDAD I. Segunda Parte Objetivo General Implementar secuencia de instrucciones en un lenguaje de programación, utilizando los elementos básicos y las estructuras de flujos de control. Objetivos Específicos • Reconocer el funcionamiento de las estructuras de flujo de control, para desarrollar instrucciones de programación. • Implementar secuencia de instrucciones de programación, utilizando los elementos básicos, los operadores, expresiones y las estructuras de flujo de control de un lenguaje de programación.
  • 4.
    Estructuras de Control Sonaquellas 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 otra.Secuencial • Se utiliza para que el programa elija entre cursos de acción alternativos.Selectivas • Permiten repetir conjuntos de instrucciones. Una condición de control establece las veces que se ejecuta una instrucción repetitiva. Repetitivas
  • 5.
    Estructuras de ControlSelectivas 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
  • 6.
    Estructuras de ControlSelectivas Ejemplos Selectivas if Anidadas if (nota == 10) return “Excelente"; else if (nota >= 9) return "Sobresaliente"; else if (nota >= 7) return "Notable"; else if (nota >= 5) return "Aprobado"; else return "Suspenso"; if (nota == 10) return “Excelente"; else if (nota >= 9) return "Sobresaliente"; else if (nota >= 7) return "Notable"; else if (nota >= 5) return "Aprobado"; else return "Suspenso";
  • 7.
    Estructuras de ControlSelectivas 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>; ] }
  • 8.
    Estructuras de ControlSelectivas 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"; }
  • 9.
    Estructuras de ControlRepetitivas 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: while do- while for
  • 10.
    Estructuras de ControlRepetitivas 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; while (condición) { Sentencia 1; Sentencia 2; ::::::::::::::::::: Sentencia N; }
  • 11.
    Estructuras de ControlRepetitivas 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;
  • 12.
    Estructuras de ControlRepetitivas 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 Sentencia; while (condición); do{ Sentencia 1; Sentencia 2; :::::::::::::::::::: Sentencia N; } while (condición);
  • 13.
    Estructuras de ControlRepetitivas 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;
  • 14.
    Estructuras de ControlRepetitivas 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; }
  • 15.
    Estructuras de ControlRepetitivas 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 for (int i=0; i<10; i++) cout << i; int i = 0; while (i < 10) { cout << i << endl; ++i; }
  • 16.
    Ejercicios Prácticos Enunciados Sentencias 1.-Leer tres números y determinar el mayor de ellos. swicth 2.- Se conoce el número de notas a procesar. Se desea saber el total de las notas. do-while 3.- Un restaurant desea mostrar a sus clientes los menús de cada día. if y operadores lógicos 4.- Una Librería desea registrar al día al menos un usuario. while 5.- Una cafetería le da recibo a sus clientes siempre y cuando ellos la registren. Al final del día desean saber cuantos recibos emitieron. if y operadores relacionales 6.-Dada la nota final de un alumno determinar si esta aprobado o reprobado. for Determinar ¿Cual secuencia está asociada al enunciado?
  • 17.
    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.
  • 18.
    Asignaciones Próxima Semana Repasarlo visto en Clase. Realizar la Autoevaluación de la Guía Didáctica Elementos Básicos del Lenguaje C++. Realizar Ejercicios Propuestos.