Sunteți pe pagina 1din 41

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

itsguasave.edu.mx
FUNDAMENTOS DE PROGRAMACION

Competencia:
• Conoce y aplica las estructuras condicionales y repetitivas de un
lenguaje de programación para resolver problemas reales.
FUNDAMENTOS DE PROGRAMACIÓN

ESTRUCTURAS CONDICIONALES EN C++


FUNDAMENTOS DE PROGRAMACIÓN
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
• 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

Operadores
lógicos
FUNDAMENTOS DE PROGRAMACIÓN

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
• 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

4. Hacer un programa que lea dos números y los imprima en


forma ascendente
FUNDAMENTOS DE PROGRAMACIÓN

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

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
Ejercicio:

• Un trabajador 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.
• Debe capturar el nombre y el puesto.
FUNDAMENTOS DE PROGRAMACIÓN
Ejercicio:

• Hacer un programa que capture 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
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
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:

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
FUNDAMENTOS DE PROGRAMACIÓN

ITERACIONES O CICLOS EN C++


FUNDAMENTOS DE PROGRAMACIÓN
¿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

Estructuras Iterativas en C++

• Estructura while()

• Estructura do-while()

• Estructura for()
FUNDAMENTOS DE PROGRAMACIÓN

• 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
#include<stdio.h> Variables de
Elementos que main ( ) trabajo
Contador con
conforman el { valor inicial
ciclo int a , suma=0 ; float promedio;
Condición
int , i=1 ;
while(i<=10) //las siguientes sentencias se ejecutarán mientras
{ // i sea menor a 10
Bloque cin >>a; //captura un número, dentro del ciclo
de código suma = suma + a ; // acumula el valor de a
a repetir i++; // equivale a i=i+1;
} // termina ciclo
promedio = (suma / 10) ; Incremento
del contador
cout << “\n el promedio es; ” << promedio ;
Cierre del return 0;
ciclo }
FUNDAMENTOS DE PROGRAMACIÓN

Ejercicio:

• Utilizando el ciclo while hacer un programa dibuje una línea


horizontal en la pantalla 50 elementos.
FUNDAMENTOS DE PROGRAMACIÓN

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
• 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
Tabla de códigos de control y argumentos
FUNDAMENTOS DE PROGRAMACIÓN
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
Sintaxis de la estructura do-while;

do {
proposición 1 ;

proposición n ;
} while (expresión) ;
FUNDAMENTOS DE PROGRAMACIÓN
#include<stdio.h>
using namespace std;
Contador con
main( ) valor inicial
{ Variables de
trabajo
int i=0 ;
int a , suma=0 ;
float promedio ;
Ejemplo do { // comienza el ciclo
Incremento
cin >> a; del contador
Bloque de suma + = a ; // reemplaza a suma = suma + a
código a i++ ; // equivale a i=i+1;
repetir
} while ( i < 10 ) ; //el ciclo se ejecuta, mientras i sea menor a 10
promedio = suma;
cout << “\n el promedio es: ”;
Condición return 0; Cierre del ciclo
}
FUNDAMENTOS DE PROGRAMACIÓN

Ejercicio:

• Utilizando el ciclo do-while hacer un programa que pida el


nombre y edad de 5 personas y calcule la media aritmética;
FUNDAMENTOS DE PROGRAMACIÓN

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
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
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
#include<stdio.h>
Ejemplo using namespace std; Variables de
int main( ) trabajo
{
Contador
y valor int i; Condición o
inicial int a , suma=0; final
float promedio ;
for ( i=1 ; i<=10 ; i++ ) //el ciclo se ejecutará con i desde 10 veces
{ Incremento
cout<<“capture valor: ”; cin >>a; del contador
suma += a ; // EQUIVALE A suma = suma + a;
Bloque de } Cierre del ciclo
código a promedio = suma/10;
repetir
cout << “\n el promedio es; ” <<promedio;
return 0;
}
FUNDAMENTOS DE PROGRAMACIÓN
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

Ejercicio: Ejemplo

1 100
• Utilizando el ciclo for Hacer un programa que
despliegue en dos columnas una numeración 2 99
del: 1 al 100 y del 100 al 1 simultáneamente, 3 98
utilizando con un solo ciclo y un solo contador. 4 97
5 96
FUNDAMENTOS DE PROGRAMACIÓN

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
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 7 entre 5 y
asignarlo a una variable “Y” escribes: Y=7%5; el resultado es Y con
valor 2.
FUNDAMENTOS DE PROGRAMACIÓN
Ejercicio:
• Hacer un programa que pida un número entero y despliegue
todos los números que son sus múltiplos (no incluir el uno y el
mismo número);

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 7 entre 5 y
asignarlo a una variable “Y” escribes: Y=7%5; el resultado es Y con
valor 2.
FUNDAMENTOS DE PROGRAMACIÓN
Ejercicio:

• Hacer un programa que pida un número y e indique si es número


primo.

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
Ejercicio:

• Hacer un programa que despliegue los números del 1 al 100 y en


cada uno debe indicar si el número es par o es impar.

Para hacer este programa necesitas usar la instrucción que


determina el residuo de una división %.
FUNDAMENTOS DE PROGRAMACIÓN
Tarea: Realizar un programa que despliegue los primeros 30 números
de la serie de Fibonacci

• La serie de Fibonacci se trata de una sucesión infinita de números


naturales que comienza con los números 1 y 1, y a partir de ellos,
cada término se obtiene sumando los dos anteriores:
1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597…
• Esta sucesión no tendría nada de particular sino fuera porque
aparece repetidamente en la naturaleza y, además, tiene
numerosas aplicaciones en ciencias de la computación,
matemáticas y teoría de juegos, entre otras.
FUNDAMENTOS DE PROGRAMACIÓN
Bibliografía

Cairó, Osvaldo. (2005). Metodología de la Programación. Tercera edición.


AlfaOmega. México, D. F.

S-ar putea să vă placă și