10. Estructuras repetitivas while o do while

En este capítulo hablaremos sobre otro tipo de estructura denominada estructura repetitiva bucle. Este tipo lo vamos a utilizar cuando queramos que una misma porción de código se ejecute varias veces.

Bucle while

En el bucle tenemos que haber definido una condición, el intérprete lo que hace es verificar esa condición, si se cumple se ejecutará un bloque de código. Hasta aquí se parece a lo que hemos venido viendo en capítulos anteriores cuando veíamos las condicionales, la diferencia es que luego de ejecutar este bloque de código vuelve a ejecutar la condición, si se vuelve a cumplir se vuelve a ejecutar este bloque de código, así hasta que llegue un punto en el que la condición no se cumpla, cuando llegue ese momento, va a salir del bucle y va a seguir con el flujo del programa.

Esquema

Ejm

  $i = 1;

  // Bucle while

  while ($i < 10) {
    echo "El valor de i es: <b> $i </b><br />";
    $i++;
  }

  echo "Has salido del bucle";

 

Bucle do while

Si queremos que nuestro bucle se ejecute por lo menos una vez podemos utilizar esta variante del bucle while de la siguiente forma.

Ejm

  // Bucle do while
  $j = 10;

  do {
    echo "El valor de i es: <b> $j </b><br />";
    $j++;
  } while ($j < 10);

 

Veamos otro ejemplo para entender el uso de este tipo de estructuras.

Ejm

  // Ejercicio completo

  $base = 2;
  $exp = 5;

  $resultado = 1;
  $i = 1;

  // 2 * 2 * 2 * 2 * 2

  while ($i <= $exp) {
    $resultado *= $base;
    $i++;
  }

  echo "El valor de $base elevado a $exp es: $resultado";