La estructura repetitiva (bucle)' while ' tiene una condición del bucle llamada 'expresión lógica' que controla la secuencia de repetición. ' while ' nos da la condición de 'mientras', es decir:
Sintaxis:
while (condición_bucle) { cuerpo: Sentencia 1; Sentencia 2; Sentencia 3; . . Sentencia n ; }
Mientras la sentencia lógica cumpla la condición del bucle entonces recién entrará en el cuerpo a cumplir cada sentencia, en caso contrario no se cumpla la condición entonces no entrará en el cuerpo la estructura.
- La condición del bucle puede ser controlado por contadores, como por ejemplo: Es decir que la variable que condiciona al bucle se inicializa antes de la estructura , para que así vaya a cumplir el bucle mientras va avanzando su función hasta que ya no cumpla y el bucle lo rechace.
#include<iostream.h> #include<conio.h> void main() { int n=0; while (n<=10) { n++; cout<<n; } getch(); }
- La condición del bucle puede ser controlado por centinelas. El centinela es un valor definido, es decir que no varia, es constante., ademas sirve para terminar el ciclo del bucle.
Ejemplo: La nota ingresada por teclado debe ser diferente a -1.
#include<iostream.h> #include<conio.h> void main() { int centinela=-1; float nota, cont=0, suma=0; cout<<"Ingrese nota: "; cin>>nota; while (nota!=centinela)
{
cont++;
suma+=nota;
cout<<"Ingrese la siguiente nota"; cin>>nota;
}
if (cont>0)
{cout<<"media = "<<suma/cont<<endl;}
else
cout<<"no hay notas";
getch();
}
Ejemplo, en este problema se declara un booleano inicializado en false, sigue en el bucle hasta que se ingrese un numero y 'digito' cambia a true, ahí es donde termina el bucle y muestra el dígito leído.
#include<iostream.h> #include<conio.h> void main() { char car; bool digito=false; while(!digito) { cout<<"Ingrese un digito para salir del bucle: "; cin>>car; digito=(('0'<=car)&& (car<='9')); } cout<<car<<" es el digito leido"<<endl; getch(); }
- Sentencia break en los bucles. En esta opción podemos realizar el bucle y dentro de ello algunas condiciones y para la terminación del bucle se pueda hacer con la condición y también con la sentencia 'break' .
Ejemplo: Se pide un número mayor a cero y se evalúa si es par en el bucle, en caso que sea impar se saldrá del bucle con la sentencia 'break'.
#include<iostream.h> #include<conio.h> void main() { int n; cout<<"Ingrese numero: "; cin>>n; while(n>=0) { if(n%2==0) {cout<<n<<"Numero par";} else break; } getch(); }
No hay comentarios:
Publicar un comentario