TECNOLÓGICO NACIONAL DE MÉXICO
Ingeniería en Sistemas Computacionales
Fundamentos de Programación
Unidad III Control de Flujo
Retícula ISIC-2010-224: Programa: AED-1285
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Fundamentos de Programación - Unidad III Control de Flujo
1. itsguasave.edu.mx
TECNOLÓGICO NACIONAL DE MÉXICO
Instituto Tecnológico Superior de Guasave
Ingeniería en Sistemas Computacionales
Fundamentos de Programación
Unidad III: Control de Flujo
Retícula ISIC-2010-224: Programa: AED-1285
4. ESTRUCTURAS CONDICIONALES
Proposición If - Else
• Esta proposición sirve para ejecutar ciertas sentencias de
programa, si una expresión resulta CIERTA ú otro grupo de
sentencias, si aquella resulta FALSA. Su interpretación literal sería:
SI es CIERTA tal cosa, haga tal otra, si no lo es sáltela.
• El caso más sencillo sería :
if (expresión) {
sentencia ;
}
FUNDAMENTOS DE PROGRAMACIÓN
5. • Cuando la sentencia que sigue al if es única no se requiere abrir llaves
{}. La sentencia sólo se ejecutará si el resultado de "expresión" es
verdadero, en caso contrario el programa salteará dicha sentencia,
realizando la siguiente en su flujo.
• En casos más complejos, la proposición if puede estar seguida por un
bloque de sentencias por lo que las llaves son obligatorias:
if (expresión)
{
sentencia 1;
...
sentencia n ;
}
FUNDAMENTOS DE PROGRAMACIÓN
7. Ejercicio:
• Determinar si un alumno aprueba o reprueba un curso,
sabiendo que aprobara si su promedio de 3 calificaciones es
mayor o igual a 70; reprueba en caso contrario.
FUNDAMENTOS DE PROGRAMACIÓN
8. • El uso de else es optativo, y su aplicación resulta en la ejecución de una ó
varias sentencias en el caso de que la expresión del if resulta FALSA. Su
aplicación puede verse en el siguiente ejemplo:
if (expresión) {
sentencia 1;
......
sentencia n;
} else {
sentencia 1;
......
sentencia n;
}
FUNDAMENTOS DE PROGRAMACIÓN
9. 4. Hacer un programa que lea dos números y los imprima en
forma ascendente
FUNDAMENTOS DE PROGRAMACIÓN
10. Ejercicio:
• En un almacén se hace un 20% de descuento a los clientes cuya
compra supere los $1000. ¿Cuál será la cantidad que pagara
una persona por su compra?
FUNDAMENTOS DE PROGRAMACIÓN
11. Funciones puts() y gets();
• La función puts( ) escribe una cadena de caracteres y un carácter de
nueva línea al final de la cadena en la salida estándar. Acepta como
argumento una cadena (sin formato).
• La función gets( ) lee una cadena de caracteres de la entrada estándar
hasta que se encuentra el carácter ‘n’, aunque este carácter no es
añadido a la cadena.
FUNDAMENTOS DE PROGRAMACIÓN
12. Ejercicio:
• Hacer un programa que capture un base y altura de un triángulo y pregunte
una de las siguientes opciones:
1) Área del Triángulo
2) Perímetro del Triángulo
3) Superficie del Triángulo
• Si el número capturado es distinto a los mencionados el programa termina.
FUNDAMENTOS DE PROGRAMACIÓN
13. Ejercicio:
• Un obrero necesita calcular su salario semanal, el cual se
obtiene de la sig. manera:
• Si trabaja 40 horas o menos se le paga $16 por hora
• Si trabaja mas de 40 horas se le paga $16 por cada una de
las primeras 40 horas y $20 por cada hora extra.
FUNDAMENTOS DE PROGRAMACIÓN
14. Ejercicio: Una empresa de bienes raíces ofrece casas de interés social, bajo las
siguientes condiciones:
• Si los ingresos del comprador son menores de $8000 o igual el enganche
será del 15% del costo de la casa y el resto se distribuirá en pagos
mensuales, a pagar en diez años.
• Si los ingresos del comprador son mayores de $8000 el enganche será del
30% del costo de la casa y el resto se distribuirá en pagos mensuales a pagar
en 7 años.
La empresa quiere obtener cuanto debe pagar un comprador por concepto de
enganche y cuanto por cada pago parcial.
FUNDAMENTOS DE PROGRAMACIÓN
15. Tarea: Hacer un programa que calcule el Índice de Masa Corporal (IMC) de una
persona bajo la siguiente fórmula:
IMC=peso(kg)/estatura M2 (metros al cuadrado)
• Debe capturar: nombre, edad, género, peso en kilos y estatura en metros.
• Al calcular el IMC mostrar al usuario la categoría correspondiente a su peso y
estatura:
FUNDAMENTOS DE PROGRAMACIÓN
Composición corporal Índice de masa corporal (IMC)
Peso inferior al normal Menos de 18.50
Peso normal 18.50 a 24.99
Peso superior al normal 25.00 a 29.99
Obesidad Más de 30.00
17. ¿Qué es una ITERACIÓN o CICLO?
• Iteración se refiere a la acción de repetir una serie de pasos un
cierto número de veces.
• En programación, Iteración es la repetición de una serie de
instrucciones en un programa de computadora.
FUNDAMENTOS DE PROGRAMACIÓN
18. Estructuras Iterativas en C++
• Estructura while()
• Estructura do-while()
• Estructura for()
FUNDAMENTOS DE PROGRAMACIÓN
19. • El ciclo while es una de las tres iteraciones posibles en C++. Su
sintaxis podría expresarse de la siguiente forma:
while(expresión)
{
proposición 1 ;
.....
proposición n ;
}
FUNDAMENTOS DE PROGRAMACIÓN
20. #include<stdio.h>
main ( )
{
int a , suma=0 ; float promedio;
int , i=1 ;
while(i<=10) //las siguientes sentencias se ejecutarán mientras
{ // i sea menor a 10
cin >>a; //captura un número, dentro del ciclo
suma = suma + a ; // acumula el valor de a
i++; // equivale a i=i+1;
} // termina ciclo
promedio = (suma / 10) ;
cout << “n el promedio es; ” << promedio ;
return 0;
}
Condición
FUNDAMENTOS DE PROGRAMACIÓN
Variables de
trabajo
Contador con
valor inicial
Elementos que
conforman el
ciclo
Bloque
de código
a repetir
Incremento
del contador
Cierre del
ciclo
21. Ejercicio:
• Utilizando el ciclo while hacer un programa dibuje una línea
horizontal en la pantalla desde la posición 1 hasta la posición
50;
FUNDAMENTOS DE PROGRAMACIÓN
22. Ejercicio:
• Utilizando el ciclo while hacer un programa que capture un
número y despliegue en pantalla su tabla de multiplicar del 1 al
10;
FUNDAMENTOS DE PROGRAMACIÓN
23. Estructura do-while()
• Expresado en palabras, esto significa: ejecute las
proposiciones, luego repita la ejecución mientras la expresión
dé un resultado VERDADERO.
• La diferencia fundamental entre esta iteración y otras que
existen en C++ es que el do-while se ejecuta siempre AL
MENOS UNA VEZ, sea cual sea el resultado de expresión.
FUNDAMENTOS DE PROGRAMACIÓN
24. Sintaxis de la estructura do-while;
do {
proposición 1 ;
…
proposición n ;
} while (expresión) ;
FUNDAMENTOS DE PROGRAMACIÓN
25. #include<stdio.h>
using namespace std;
main( )
{
int i=0 ;
int a , suma=0 ;
float promedio ;
do { // comienza el ciclo
cin >> a;
suma + = a ; // reemplaza a suma = suma + a
i++ ; // equivale a i=i+1;
} while ( i < 10 ) ; //el ciclo se ejecuta, mientras i sea menor a 10
promedio = suma / 10;
cout << “n el promedio es: ” << promedio;
return 0;
}
FUNDAMENTOS DE PROGRAMACIÓN
Ejemplo
Variables de
trabajo
Contador con
valor inicial
Condición
Bloque de
código a
repetir
Cierre del ciclo
Incremento
del contador
26. Ejercicio:
• Utilizando el ciclo do-while hacer un programa que despliegue
en pantalla los caracteres imprimibles del código ASCII (del 33
al 255).
• Nota: para realizar este programa requieres convertir valores
enteros a tipo char, además de utilizar la instrucción printf();
FUNDAMENTOS DE PROGRAMACIÓN
27. • Funciones printf ( ) y scanf( ): La función printf ( ) escribe datos
formateados en la salida estándar (pantalla). La función scanf ( )
lee datos formateados de la entrada estándar (teclado).
Sintaxis:
printf (“cadena de control”, lista de argumentos);
scanf (“cadena de control”, &lista de argumentos);
Ejemplo:
printf(“Nombre %s",&nombre);
scanf("%f",&estatura);
FUNDAMENTOS DE PROGRAMACIÓN
28. Tabla de códigos de control y argumentos
FUNDAMENTOS DE PROGRAMACIÓN
29. Ejercicio:
• Utilizando el ciclo do-while hacer un programa que calcule la
media aritmética de 5 números capturados por teclado;
FUNDAMENTOS DE PROGRAMACIÓN
30. Iteración for
• El ciclo for() es simplemente una manera abreviada de expresar
una iteración while(), es útil para los casos en donde se conoce de
antemano el número de veces que una o más sentencias deben
repetirse.
FUNDAMENTOS DE PROGRAMACIÓN
31. Sintaxis de la iteración FOR
for (contador; condición; incremento)
{
Código a Repetir…;
}
Donde:
• Contador: es una variable numérica de tipo entero.
• Condición: es la condición que se evalúa, es decir, el valor final
para contador.
• Incremento: es el valor que se suma o resta al contador.
FUNDAMENTOS DE PROGRAMACIÓN
32. #include<stdio.h>
using namespace std;
int main( )
{
int i;
int a , suma=0;
float promedio ;
for ( i=1 ; i<=10 ; i++ ) //el ciclo se ejecutará con i desde 10 veces
{
cout<<“capture valor: ”; cin >>a;
suma += a ; // EQUIVALE A suma = suma + a;
}
promedio = suma/10;
cout << “n el promedio es; ” <<promedio;
return 0;
}
FUNDAMENTOS DE PROGRAMACIÓN
Ejemplo Variables de
trabajo
Contador
y valor
inicial
Condición o
final
Bloque de
código a
repetir
Cierre del ciclo
Incremento
del contador
33. Ejercicio:
• Hacer programa que calcule el factorial de un número X,
utilizando el ciclo FOR.
Nota: El factorial de un número entero positivo se define como
el producto de todos los números naturales anteriores o iguales
a él. Se escribe n!, y se lee "n factorial“.
Por ejemplo, 5! = 5·4·3·2·1 = 120 (no se multiplica el 0)
FUNDAMENTOS DE PROGRAMACIÓN
34. Ejercicio:
• Utilizando el ciclo for Hacer un programa que
despliegue en dos columnas una numeración
del: 1 al 100 y del 100 al 1 simultáneamente,
utilizando con un solo ciclo y un solo contador.
FUNDAMENTOS DE PROGRAMACIÓN
Ejemplo
1
2
3
4
5
100
99
98
97
96
35. Nota: Todos los ciclos pueden ser terminados antes de cumplirse la
expresión o condición puesta en su sintaxis, para esto C++ tiene las
instrucciones break; y exit(0);
• La función break; (sin paréntesis) termina un ciclo y manda el
flujo a la siguiente instrucción del programa después del ciclo.
• La función exit(0); (con paréntesis), es mas compleja, ya que
termina el programa en ejecución aún cuando no se haya
llegado al final del mismo.
FUNDAMENTOS DE PROGRAMACIÓN
36. Ejercicio:
• Hacer un programa que imprima en pantalla los números pares
del 1 hasta el 200;
Nota: Para hacer este programa necesitas usar la instrucción de C++
que determina el residuo de una división, esta instrucción es el signo
de porcentaje “%”.
Por ejemplo: si quieres saber cual es el residuo de 5/7 y asignarlo a
una variable “Y” escribes: Y=5%7; el resultado es Y con valor 2.
FUNDAMENTOS DE PROGRAMACIÓN
37. Ejercicio:
• Hacer un programa que despliegue los números primos que hay
entre 1 y 1000.
Para hacer este programa necesitas usar la instrucción que
determina el residuo de una división % y de ser necesario la
sentencia break;
FUNDAMENTOS DE PROGRAMACIÓN