PROGRAMMIAMO
JS - Linguaggio: Cicli
Cicli

Un ciclo è una sequenza di istruzioni ripetuta più volte in dipendenza da una condizione. I cicli in JS seguono la stessa sintassi dei cicli in linguaggio C, ragione per cui ci limitiamo qui a un rapido richiamo dei concetti fondamentali.

 

While

Il ciclo while contiene all'inizio la condizione di ripetizione del ciclo (il ciclo viene eseguito se la condizione è vera) seguita dalle istruzioni del ciclo fra parentesi graffe. Per esempio il ciclo seguente calcola la somma di tutti i numeri fra 1 e N:

cont = 1;
somma = 0;

while (cont <= N)
   {
   somma = somma + cont;
   cont = cont + 1;
   }

 

For

Nel ciclo for l'incremento (o il decremento del contatore) viene effettuato automaticamente. Per esempio il ciclo precedente, realizzato con un for sarebbe:

somma = 0;

for (cont = 1; cont <=N ; cont++)
   {
   somma = somma + cont;
   }

Dal momento che il ciclo for precedente contiene una sola istruzione, sarebbe possibile, volendo, omettere la coppia di parentesi graffe. Si osservi la condizione del ciclo che è sempre una condizione di ripetizione e non di termine del ciclo stesso (prosegui finché cont rimane minore o uguale a N).

L'esempio seguente mostra invece un ciclo for a decremento (o all'indietro; il contatore viene decrementato a ogni ripetizione del ciclo):

for (i = 100; i >= 0; i--)
   {
   somma = somma + i;
   }

Le notazione cont++ e i-- sono notazioni abbreviate che possono essere sostituite con la notazione estesa (rispettivamente cont = cont + 1 e i = i - 1).

 

Do... while

Il ciclo Do.. while effettua il controllo della condizione di ripetizione in fondo al ciclo. A differenza del while normale, il do..while esegue sempre almeno una volta le istruzioni interne al ciclo (anche nel caso in cui la condizione di ripetizione è subito falsa):

k = 0;
do
   {
   alert("Ripetizione: " + k);
   k = k + 1;
   }
while (k<10);

 

Istruzione break

Spesso è comodo costruire cicli che è possibile interrompere in qualsiasi momento, senza attendere che venga meno la condizione di ripetizione. Molte volte anzi, in questi cicli, la condizione di ripetizione viene eliminata realizzando quello che si dice ciclo infinito e usando un'istruzione break per interrompere il ciclo. L'uso dell'istruzione break e i cicli infiniti è stato già ampiamente trattato nella sezione dedicata al linguaggio C, per cui ci limiteremo qui a un rapido esempio:

divisore=2;

while (divisore<numero)
    {
   resto = numero%divisore;

   if (resto==0)
       break;
 
   divisore = divisore+1;
    }

Questo ciclo si interrompe o quando divisore non è più minore di numero (condizione del ciclo) oppure quando la variabile resto vale zero.

 

 

precedente - successiva

Sito realizzato in base al template offerto da

http://www.graphixmania.it