🎃 Grandes descuentos en libros en línea, eformaciones y vídeos*. Código CALABAZA30. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. Aprender a desarrollar con JavaScript
  3. Procesamiento iterativo (bucles)
Extrait - Aprender a desarrollar con JavaScript Aspectos principales del uso de frameworks (4ª edición)
Extractos del libro
Aprender a desarrollar con JavaScript Aspectos principales del uso de frameworks (4ª edición)
1 opinión
Volver a la página de compra del libro

Procesamiento iterativo (bucles)

Presentación de la sintaxis de los bucles

En el marco del capítulo Desarrollo a partir de algoritmos, hemos estudiado cinco tipos de bucles que permiten tratar todos los casos de procesamientos iterativos:

  • Bucle Hasta que, con una comprobación de la condición al inicio de la iteración.

  • Bucle Mientras que, con una comprobación de la condición al inicio de la iteración.

  • Bucle Hasta que, con una comprobación de la condición al final de la iteración.

  • Bucle Mientras que, con una comprobación de la condición al final de la iteración.

  • Bucle Para.

Estas estructuras iterativas no se implementan en todos los lenguajes de programación. Por ejemplo, es posible pasar del bucle Hasta que al bucle Mientras que, modificando la condición.

Por el contrario, el bucle Para prácticamente siempre está presente en los lenguajes. Su particularidad es que solo se usa cuando el número de iteraciones es conocido al inicio del procesamiento. Siempre es posible recurrir a un bucle Mientras que (o Hasta que).

En JavaScript, la elección de las estructuras iterativas se reduce a:

  • while: bucle Mientras que, con una comprobación de la condición al inicio de la iteración,

  • do ... while: bucle Mientras que, con una comprobación de la condición al final de la iteración,

  • for: bucle Para.

Bucle while

1. Sintaxis

El bucle while permite traducir una lógica de Mientras que, con una comprobación inicial de estructura. La sintaxis es la siguiente:

while(condición) 
{  
  secuencia de código 
} 

Con el bucle while se ejecuta una secuencia de código mientras la condición entre paréntesis sea verdadera.

Por supuesto, con esta iteración es necesario que el estado de la condición pueda evolucionar a lo largo de la secuencia del código integrado en las llaves. También es necesario estar muy atento al hecho de que la condición se pueda evaluar la primera vez que se pasa por ella. Se trata de un motivo de funcionamiento erróneo frecuente. Muy a menudo, la condición también se realiza sobre el estado de una variable de tipo contador. Por supuesto, para que el contador pueda alcanzar un valor límite, hay que modificarlo durante la secuencia de código (incremento o decremento).

Para terminar, observe en los scripts de este libro y en muchos de los ejemplos disponibles en Internet la siguiente sintaxis alternativa (que ya habíamos mencionado para la estructura condicional if):

while(condición) { 
   secuencia de código 
} 

2. Ejercicio n.°9: Media de 10 números que se introducirán con el teclado

Enunciado

Calcular y mostrar la media de 10 números leídos...

Bucle do while

1. Sintaxis

El bucle do while permite traducir una lógica de Mientras que, con una comprobación al final de la estructura. La sintaxis es la siguiente:

do  
{  
   secuencia de código 
} while(condición) 

Con el bucle do while, se ejecuta una secuencia de código mientras la condición entre paréntesis sea verdadera.

Hay una diferencia notable respecto al bucle while. Aquí la secuencia de código se ejecuta al menos una vez, porque la comprobación de la condición se realiza al terminar la primera vuelta del bucle.

2. Ejercicio n.°11: Media de una serie de n números que se introducirán con el teclado

Enunciado

Calcular y mostrar la media de n números reales introducidos con el teclado (la lista termina con un cero).

Corrección (parcial) en JavaScript

/* Inicializaciones */ 
cnt = 0; 
suma = 0.0; 
  
/* Bucle de procesamiento */ 
do 
{ 
    nblu = parseFloat(prompt("Número (0 para terminar): ")); 
    cnt = cnt + 1; 
    suma = suma + parseFloat(nblu); 
} while (nblu != 0) 
  
/* Visualización del resultado */ 
if (cnt == 1) 
{ 
    document.write("No se ha introducido ningún número"); 
} 
else ...

Bucle for

1. Sintaxis

Recordemos simplemente que este bucle solo se utiliza cuando el número de iteraciones que se van a realizar se conoce al inicio del procesamiento.

La sintaxis es la siguiente:

for (contador = valor inicial; valor final de contador; 
incremento del contador)  
{ 
    secuencia de código 
} 

No insistimos en el funcionamiento de este tipo de bucle porque ya se visto ampliamente en el capítulo Desarrollo a partir de algoritmos.

Evidentemente la gestión de la progresión del contador está a cargo de la estructura for. Por tanto, no es necesario prever un valor inicial para el contador antes del bucle (solo se hace la declaración del contador). El valor inicial, el valor final y el paso de incremento/decremento del contador se tienen en cuenta por el bucle. No hay que cambiar el valor del contador en la secuencia de código.

2. Ejercicio n.°12: Media de una serie de 10 números que se introducirán con el teclado

Enunciado

Calcular la media de 10 números que se introducen con el teclado, con un bucle for.

Este ejercicio ya se ha realizado con antelación con un bucle while (Ejercicio n.°9). Recordemos que siempre es posible cambiar un bucle for por un bucle while (aunque no obligatoriamente a la inversa).

Corrección (parcial) en JavaScript

/* Declaración de variables locales */  
var nblu, cnt, suma, media;  ...