Resultados. Ejercicios Prácticos. Test 4. Bucles

  Cuestión 1.

  Cuestión 2.


  Cuestión 3.

  Cuestión 4.

  • Solución:
    class Fibonacci { 
        public static void main( String args[] ){ 
            int max = 1000; 
            int bajo = 1;
            int alto = 0; 
    
            System.out.println( bajo ); 
            while( alto < max ) { 
                System.out.println( alto ); 
                int temp = alto; 
                alto = alto + bajo; 
                bajo = temp; 
                } 
            } 
        } 

  Cuestión 5.

  • Solución: Es una variable booleana (boolean) a la que asignaremos valores y que nos ayudará en el control del bucle.
  • Feedback: Las variables "centinelas," también conocidas como "banderas" o "flags", permiten introducir elementos de control adicionales de la ejecución de los bucles y aprovechar las combinaciones de las variables de tipo boolean que se comprueban cada vez que se ejecuta la condición del bucle. También pueden servir para la depuración de programas (mira la URL que se pone referencia).
    Reparación de programas (debugging) : http://www.lab.dit.upm.es/~lprg/material/apuntes/debug/debug.htm

  Cuestión 6.

  • Solución: Si condición = = false, el bucle no se llega a ejecutar nunca.
  • Feedback: Lo que tiene que quedar claro del bucle do-while es que EL BUCLE SIEMPRE SE EJECUTA AL MENOS UNA VEZ. Y al final de esa primera iteración se comprueba la condición para controlar si se sigue o no ejecutando el mismo.

    NOTA: Recuerda que en las expresiones booleanas que se realizan en la condición del bucle, hay que usar el operador relacional = = para realizarlas. No hay que confundirlo con el operador de asignación = que lo que hace es asignar un valor a otro.


  Cuestión 7.
  • Solución:
    int a=0;
    int b=0;
    
    while (a<7) {
        a++;
        b+=2;
    }
    
  • Feedback:
  Cuestión 8.
  • Solución: La inicialización se realiza cada vez antes de entrar al bucle.
  • Feedback: La inicialización del bucle for se realiza úNICAMENTE al comienzo del mismo.

    NOTA: Es importante recordar que el el bucle for TODOS los elementos (inicialización, condición y actualización) son OPCIONALES.

    Como ejemplo de esto, existe la posibilidad de implementar un BUCLE INFINITO (no sale nunca de él) si los dejamos TODOS vaciós, es decir:

    for ( ; ; ) { 
        sentencias;
    }

  Cuestión 9.
  • Solución: La sentecias break y continue pueden usarse en tanto en sentencias de repetición (bucles) como de bifurcación (switch).
  • Feedback: La sentencia continue SÓLO se emplea en estructuras de repetición (bucles).


  Cuestión 10
  • Solución: El bucle se ejecuta permanentemente (no sale).
  • Feedback: Hay que tener cuidado al combinar las sentencias break y continue para no tener efectos indeseados como este caso. Los bucles siempre tienen que tener condiciones de "salida", bien por el uso de la sentencia break o por terminación del mismo.