¿Qué es un ciclo while?
Los ciclos while son también una estructura cíclica, que nos permite ejecutar una o varias líneas de código de manera repetitiva sin necesidad de tener un valor inicial e incluso a veces sin siquiera conocer cuando se va a dar el valor final que esperamos, los ciclos while, no dependen directamente de valores numéricos, sino de valores booleanos, es decir su ejecución depende del valor de verdad de una condición dada, verdadera o falso, nada más. De este modo los ciclos while, son mucho más efectivos para condiciones indeterminadas, que no conocemos cuando se van a dar a diferencia de los ciclos for, con los cuales se debe tener claro un principio, un final y un tamaño de paso. Los ciclos while es otra forma de hacer repeticiones de condiciones permitiéndonos ejecutarla de manera repetitiva sin tener un valor inicial o final ya que este no depende de valores numéricos y mas bien depende de condiciones otorgadas de verdadero o falso y por este motivo son diferentes y más efectivos a diferencia de los ciclos for.
La sentencia o grupo de sentencias que se repite en un bloque se denomina cuerpo del ciclo y cada repetición del cuerpo del ciclo se llama iteración del ciclo.
¿Cómo funciona un ciclo while?
Necesitamos comprender que en un ciclo while se utiliza cuando queremos o necesitamos repetir una sentencia un numero indefinido de veces, Para comprender mejor el funcionamiento del ciclo while, pongamos un buen ejemplo, imaginemos que por algún motivo, queremos pedirle a un usuario una serie de números cualquiera y que solo dejaremos de hacerlo cuando el usuario ingrese un número mayor a 100. Como vemos, aquí no podríamos utilizar un ciclo for, pues no tenemos ni idea de cuándo al usuario se le va a ocurrir ingresar un número mayor que 100, es algo indeterminado para nosotros, sin embargo el ciclo while nos permite ejecutar una acción de forma infinita hasta que se cumpla alguna condición especifica, en nuestro caso sería que el numero ingresado sea mayor a 100. De modo que si el usuario nos ingresa de manera sucesiva los siguientes numero 1,50,99, 49, 21, 30, 100 ..., nuestro programa no finalizara, pues ninguno de estos números es mayor que 100, sin embargo si nos ingresara el numero 300, el programa finalizaría inmediatamente.
Veremos unos ejemplos de sintaxis en el ciclo while:
Sintaxis
while ( condición )
sentencia;
sentencia;
• Si se requiere realizar más de una sentencia se deben utilizar llaves.
while ( condición )
{
bloque de sentencias;
}Aquí se ejecuta el (los) sentencia (s) mientras la condición es verdadera; al momento de ser falsa termina el ciclo. Si la condición es falsa la primera vez nunca se ejecuta(n) el (las) sentencia(s).
Ejemplos:
Ejemplos:
Ejemplo 1: Programa que pide 10 números y calcula y muestra la suma de todos los que fueron pares.
#include <iostream.h>
int suma=0, cont= 10, num;
int main()
{
while (cont > 0)
{
cout << "Dame el numero " << endl;
cin >> num;
if (num % 2 == 0 ) // verificamos que sea un número par
suma += num; // recordemos que suma+= num es equivalente a suma = suma + num (ver modulo1 sección 3)
int suma=0, cont= 10, num;
int main()
{
while (cont > 0)
{
cout << "Dame el numero " << endl;
cin >> num;
if (num % 2 == 0 ) // verificamos que sea un número par
suma += num; // recordemos que suma+= num es equivalente a suma = suma + num (ver modulo1 sección 3)
cont--;
}
cout << "La suma de los numeros pares proporcionados es " << suma << endl;
return 0;
}
Ejemplo 2: Obtener el promedio de calificaciones de un grupo de 20 estudiantes
#include <iostream.h>
int total, contador, calif;
double promedio;
int main()
{
total = 0;
contador = 1;
while (contador <= 20 )
{
cout<<" Dame la calificacion "<<endl;
cin >> calif;
total = total + calif;
contador ++;
}
promedio = total / 20.0;
cout<<"El promedio es "<< promedio<<endl;
return 0;
}




Buena información
ResponderEliminarInteresante ciclo
ResponderEliminarVengo a hacer otro comentario, correcto, solo a eso, nada más :v
ResponderEliminarExcelente información gracias
ResponderEliminarMuy buena información
ResponderEliminarMuy buena información
ResponderEliminarBuena información compañera muy útil (↑ω↑)
ResponderEliminarExcelente información, muy buen trabajo
ResponderEliminar