Está en la página 1de 14

Estructuras de control de flujo: for,

while y do-while. Lazos anidados.


Ejemplos

Prof. Lic. C. Martín Cruz Salazar


Email: ccruz@uni.edu.pe
SINTAXIS: BUCLE FOR
EJEMPLO 1: BUCLE FOR
Escribir un contador de 10 cuentas usando “for”:
for (int i=0; i<10; i++){
cout << “Loop #” << i << endl;
}

El bucle se ejecutó diez veces, pero la variable i no comenzó en 1. En


cambio, comenzó en 0. C++, como la mayoría de los lenguajes de
programación, comienza a contar desde 0 de manera
predeterminada. C++ continuará contando hasta 10, pero sin
incluirlo. i++ le dice al sistema que continúe contando de 1 en 1 y i <
10 le dice al sistema que deje de contar antes de llegar a 10.
BUCLES INFINITOS
Si no tienes cuidado, puedes terminar con un bucle infinito.
Esto significa que tienes un ciclo que nunca termina.
En el ejemplo anterior, si cambia i++ a i–, entonces i disminuirá en 1
después de cada iteración. Esto hace que el iterador de bucle nunca
alcance su valor especificado. La expresión booleana continúa
siendo verdadera y el sistema continúa imprimiendo hasta que se
agota el tiempo de espera.
Siempre verifique el encabezado de su bucle para asegurarse de
que haga lo que pretende que haga.
EJEMPLO 2:BUCLE FOR
Hacer un programa que imprima desde la A hasta la Z.
BUCLE: DO WHILE
EJEMPLO 1: BUCLE DO WHILE

Hacer un contador de 10 cuentas(de 0 a 9).


int x=0;
do{
cout << x << endl;
x++;
}while(x<10);

En este caso, el bloque de código dentro del do se ejecuta al menos


una vez, independientemente de si la condición es verdadera o falsa.
Luego, la expresión condicional se evalúa y, si es verdadera, el ciclo
continúa. Si es falsa, el ciclo se detiene y el control se transfiere a la
siguiente instrucción después del while.
EJEMPLO 2: BUCLE DO WHILE

Pedir un número al usuario hasta que ingrese un valor válido.


int num;
do {
cout << "Ingrese un número entero positivo: ";
cin >> num;
} while (num <= 0);
BUCLE: WHILE
EJEMPLO 1: BUCLE WHILE

Cálculo de factorial de un número.


int F, i, n;
i=F=1;
cout << “Ingrese el número de factorial a encontrar : ”;
cin >> n;
while(i<=n)
{
F*=i;
i++;
}
cout << “El factorial de ”<< n << “es : ” << F << endl;
BUCLES ANIDADOS
Un bucle anidado es un bucle que existe dentro de otro bucle. Una
ventaja de usar bucles anidados es que los bucles pueden trabajar
juntos para crear salidas únicas y complejas. Sin embargo, debido a su
complejidad, es raro ver la implementación de más de dos bucles
anidados. Si es posible, se recomienda rehacer su código para reducir
esta complejidad.
EJEMPLO 1: BUCLES ANIDADOS

El siguiente código dibujará un rectángulo de 100 # en una cuadrícula


de 10 x 10. El primer bucle controla la fila de salida, mientras que el
segundo bucle imprime 10 # de columnas en la pantalla.

for (int row = 0; row < 10; row++) { //Bucle exterior


for (int col = 0; col < 10; col++) { //Bucle interior
cout << "#";
}
cout << "" << endl; //añade nueva linea
}
EJEMPLO 2: ANIDADOS CON BUCLE WHILE
EJERCICIO 1: Programa que pide que ingreses un número y se
genera su tabla de multiplicar.
EJERCICIO 2: Programa que pide que ingreses un número y hasta
allí cuenta los números pares que existen.
EJERCICIO 3: Programa que genera la serie de Fibonacci hasta un
número ingresado por el teclado.
EJERCICIO 4: Escribir un programa que calcule la suma de todos los
múltiplos de 5 comprendidos entre dos enteros leídos por teclado.

También podría gustarte