En este ejemplo se incrementa siempre el valor de la variable i en cada iteración al tiempo que se decrementa el valor de num. Supongamos que como valor final introducimos 6 y como valor inicial 1 (el rango será [0,6]
| num = fin; par = 0; impar=0 | Se inicializa
el valor de las variables. Num comienza teniendo el valor del límite superior del rango introducido por el usuario (fin = 6) En impar almacenaremos el número de impares en el rango [inici,fin] ([1,6]) |
| for (i=inici;i<=fin;i++,num--) | se asigna el
valor pasado como inici al
contador i. En la
primera pasada i=1. El bucle se ejecutará hasta que i sea menor o igual (operador <=) a la variable pasada como fin. Como 1 es menor que 6 continuaremos. Tras cada iteración se incrementa el valor del contador i (mediante el operador ++) y se decrementa el valor de num (operador --). En la primera iteración i pasará de valer 1 a valer 2 y num se decrementará en uno, es decir que su valor actual será 5. |
| if (num%2==0) continue; | Comprobamos
que el número num sea
múltiplo de dos (par) mediante el operador %. 1 no es
múltiplo de dos por lo tanto no se ejecuta continue.
Si lo es la sentencia continue provoca que se salte a la siguiente iteración, sin terminar la actual. No se incrementa el valor de la variable impar. |
| impar ++; | Se incrementa en uno el valor de la variable impar. Sólo se ejecutará si num es impar (esto implica que no se ejecute continue). La variable impar toma el valor 1 y volvemos al paso 1. |
| alert(document.write(" " + impar ); | Escribe el valor de la variable impar y el numero de iteración actual (i) mediante una ventana de diálogo (alert). |