ESTRUCTURA DO WHILE
Enviado por dariio03 • 17 de Febrero de 2015 • 544 Palabras (3 Páginas) • 287 Visitas
Estructura Do While
La estructura do while es otra estructura repetitiva, la cual ejecuta al menos una vez su bloque repetitivo, a diferencia del while o del for que podían no ejecutar el bloque.
Esta estructura repetitiva se utiliza cuando conocemos de antemano que por lo menos una vez se ejecutará el bloque repetitivo.
La condición de la estructura está abajo del bloque a repetir, a diferencia del while o del for que está en la parte superior.
Representación gráfica:
El bloque de operaciones se repite MIENTRAS que la condición sea Verdadera.
Si la condición retorna Falso el ciclo se detiene. En Java, todos los ciclos repiten por verdadero y cortan por falso.
Es importante analizar y ver que las operaciones se ejecutan como mínimo una vez.
RECOLECCION Y ELABORACION DE LOS DATOS
MATERIALES Y METODOS UTILIZADOS
La sentencia de iteración do-while es de tipo posprueba. Primero realiza las acciones luego pregunta. La sintaxis es la siguiente:
do sentencia while ( condición );
Observamos que es como un while pero al revés. Primeramente se ejecuta la sentencia y luego evalúa la condición. Si la expresión de la condición es verdadera vuelve a dar un ciclo. De lo contrario, termina. Esto nos garantiza que la sentencia se ejecute al menos una vez.
do System.out.println("Lo veras una vez");
while ( false );
Resulta útil para los casos en donde tendremos que realizar ciertas acciones antes de verificar una condición.
Realicemos un programa que cuente la cantidad de dígitos que posee un número. Para ello tendremos que dividir por diez el número que nos han dado, hasta que el resultado se vuelva cero. Entonces recurrimos al while para realice los ciclos necesarios.
public class CuentaDigitos{
public static void main(String args[]){
int número = 4557888;
int dígitos = 0;
while ( número > 0 ) {
número /=10;
dígitos++;
}
System.out.println(dígitos);
}
}
¿Qué ocurre si el número que nos dan es el cero? El resultado nos dará cero. Obviamente es erróneo, debería devolver un dígito. Pero no entra en el ciclo debido a que de entrada no satisface la condición. Podríamos implementar una solución "ad hoc".
número /=10;
dígitos++;
while ( número > 0 ) {
número /=10;
dígitos++;
}
Realizamos primeramente las operaciones y luego entramos en el bucle si se verifica la condición. Pero no hace falta mirar mucho para darnos cuenta que es una solución poco elegante. En realidad quedará mejor con la sentencia do-while
public class CuentaDigitos{
public static void main(String args[]){
int número = 4557888;
...