Teoria For - While
Teoria For - While
Teoria For - While
For
Cualquier problema que requiera una estructura repetitiva se puede resolver
empleando la estructura while. Pero hay otra estructura repetitiva cuyo planteo es más
sencillo en ciertas situaciones.
Representación gráfica
En su forma más típica y básica, esta estructura requiere una variable entera que
cumple la función de un CONTADOR de vueltas. En la sección indicada como
"inicialización contador", se suele colocar el nombre de la variable que hará de
contador, asignándole a dicha variable un valor inicial. En la sección de "condición"
se coloca la condición que deberá ser verdadera para que el ciclo continúe (en caso
de un falso, el ciclo se detendrá). Y finalmente, en la sección de "incremento contador"
se coloca una instrucción que permite modificar el valor de la variable que hace de
contador (para permitir que alguna vez la condición sea falsa)
Cuando el ciclo comienza, antes de dar la primera vuelta, la variable del for toma el
valor indicado en la sección de de "inicialización contador". Inmediatamente se
verifica, en forma automática, si la condición es verdadera. En caso de serlo se
ejecuta el bloque de operaciones del ciclo, y al finalizar el mismo se ejecuta la
instrucción que se haya colocado en la tercer sección.
La variable del for puede tener cualquier nombre. En este ejemplo se la ha definido
con el nombre f.
Analicemos el ejemplo:
- La variable f toma inicialmente el valor 1.
- Se controla automáticamente el valor de la condición: como f vale 1 y esto es menor
que 50, la condición da verdadero.
- Como la condición fue verdadera, se ejecutan la/s operación/es.
- Al finalizar de ejecutarlas, se retorna a la instrucción f++, por lo que la variable f se
incrementa en uno.
- Se vuelve a controlar (automáticamente) si f es menor o igual a 50.
Como ahora su valor es 2, se ejecuta nuevamente el bloque de instrucciones e
incrementa nuevamente la variable del for al terminar el mismo.
- El proceso se repetirá hasta que la variable f sea incrementada al valor 51.
En este momento la condición será falsa, y el ciclo se detendrá.
La variable f PUEDE ser modificada dentro del bloque de operaciones del for, aunque
esto podría causar problemas de lógica si el programador es inexperto.
La variable f puede ser inicializada en cualquier valor y finalizar en cualquier valor.
Además, no es obligatorio que la instrucción de modificación sea un incremento del
tipo contador (f++).
Problema 1:
Diagrama de flujo:
La variable f (o como sea que se decida llamarla) debe estar definida como una
variable más.
While
- El test o prueba de condición antes de cada repetición, que motivará que se repitan
o no las sentencias.
Problema 1:
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:
Ejemplo
Escribir un programa que solicite la carga de un número entre 0 y 999, y nos muestre
un mensaje de cuántos dígitos tiene el mismo. Finalizar el programa cuando se cargue
el valor 0 (cero).
Diagrama de flujo:
No hay que confundir los rombos de las estructuras condicionales con los de las
estructuras repetitivas do while.
En este problema por lo menos se carga un valor. Si se carga un valor mayor o igual
a 100 se trata de un número de tres cifras, si es mayor o igual a 10 se trata de un
valor de dos dígitos, en caso contrario se trata de un valor de un dígito. Este bloque
se repite hasta que se ingresa en la variable valor el número 0 con lo que la condición
de la estructura do while retorna falso y sale del bloque repetitivo finalizando el
programa.