Sei sulla pagina 1di 8
 
Cicli con contatore
La struttura ciclica con contatore
Questa struttura è usata
esclusivamente
 quando è noto a priori il numero di ripetizioni da eseguire; indichiamo con
N
 il numero di ripetizioni. Per poter eseguire un numero N di ripetizioni, è necessario utilizzare una variabile che funga da
contatore
di ripetizioni: ad ogni ciclo, tale variabile deve essere incrementata di 1. Indichiamo, in modo del tutto arbitrario, la variabile contatore con
cont
.La struttura ciclica con contatore può essere rappresentata graficamente nel modo seguente:Come potete osservare dalla figura, le azioni fondamentali da compiere sono:
1.Stabilire il valore iniziale del contatore
Il valore iniziale del contatore deve essere assegnato prima di entrare nel ciclo e può essere un qualunque numero intero positivo. Per il momento utilizzeremo 1 come valore iniziale del contatore.
2.Imporre la condizione di terminazione (uscita) del ciclo
Un ciclo deve terminare, prima o poi. In caso contrario si incorre in un problema che viene chiamato
loop infinito
. Un loop infinito è un ciclo che non termina mai, percla condizione di uscita da esso rimane sempre vera. Questa situazione è assolutamente da evitare. Come condizione di terminazione useremo per il momento la seguente:
cont<=N
.
Autore: Cinzia BocchiUltimo aggiornamento: 20/09/11
cont <= N
vero
Istruzioni del ciclo
falso
cont= cont+1cont= 1inizializzazione del contatorecondizione di terminazione del cicloincremento del contatore
1
 
Iniziando con un contatore pari a 1 e imponendo la condizione cont<=N si ottengono esattamente
N ripetizioni
, come desiderato. Fate attenzione, però, perché se il valore iniziale del contatore è diverso, questa regola non vale più, ma è necessario fare il seguente calcolo:
N = numero_di_cicli + cont_iniziale -1
Vediamo alcuni esempi:-se numero_di_cicli è 10 e cont_iniziale vale 1, allora N deve valere 10-se numero_di _cicli è 10 e cont_iniziale vale 0, allora N deve valere 9-se numero_di_cicli è 10 e cont_iniziale vale 8, allora N deve valere 17
3.Determinare esattamente quali istruzioni devono essere ripetute4.Incrementare il contatore dopo l’esecuzione di ciascun ciclo
Con il termine incremento si intende l’aumento di 1 unità.
Un esempio
Il seguente diagramma di flusso rappresenta l’algoritmo per risolvere il problema:
dati 5 numeri interi calcolarne la somma
.
TABELLA DATIIDDescrizioneI/O/L/CValore Iniz.TipoVincoli
numContiene i numeri inseriti di volta in voltaIinterosommaContiene le somme parziali e la somma totaleOinterocontContatore del cicloLintero
FLOW CHART
Startsomma= 0cont= 1cont<=5somma= somma+numinput(num)cont= cont+1
Vero
output(somma)
1234567
End
Falso
Autore: Cinzia BocchiUltimo aggiornamento: 20/09/11
2
 
TABELLA DI SIMULAZIONE
Supponiamo che i 5 numeri inseriti siano: 1 5 2 0 3. L’output atteso è 11.
cicloistruznumsommacontcondizioneoutput
102113Vera41516223Vera4556633342Vera586443Vera40586553Vera43511663Falsa7
11
Il risultato ottenuto è uguale a quello atteso: l’algoritmo è corretto.
La struttura con contatore in Java
La struttura ciclica con contatore viene realizzata in Java utilizzando lo
statement FOR 
, la cui sintassi è
for
 
(
inizializzazione
;
condizione
;
aggiornamento
){
istruzioni del ciclo
}
Inizializzazione
 comprende la dichiarazione e l’inizializzazione del contatore
o
La dichiarazione è necessaria solo se il contatore non è stato dichiarato in precedenza.
o
Se la variabile contatore è dichiarata all’interno del FOR, essa è visibile solo all’interno del blocco.es.
int cont = 1
 oppure, se cont è già stato dichiarato
cont = 1
Autore: Cinzia BocchiUltimo aggiornamento: 20/09/11
3

Premia la tua curiosità

Tutto ciò che desideri leggere.
Sempre. Ovunque. Su qualsiasi dispositivo.
Annulla in qualsiasi momento
576648e32a3d8b82ca71961b7a986505