I Cicli o iterazioni

« Older   Newer »
  Share  
view post Posted on 7/5/2010, 21:48

Group:
,,,..--::|| AMMINISTRATORE ||::--..,,,
Posts:
1,602
Location:
Scheda di rete

Status:


In Java esistono due tipi di Cicli (operazioni eseguite più di una volta): il ciclo for e il ciclo while.

Il ciclo for viene utilizzato quando si vuole eseguire delle operazioni un numero determinato (già conosciuto) di volte. La sintassi del ciclo for è la seguente:

for (assegnazione variabile; limite massimo; incremento)

Quindi andiamo a determinare un valore iniziale della variabile nella assegnazione, un valore massimo determinato spesso da una condizione e un incremento o decremento in base alle necessità.

// esempio

class ProvaFor1
{
public static void main(String args[])
{
for (int i=0; i<10; i++)
{
System.out.println(i);
}
}
}

Come risultato avremo dieci righe composte da numeri da 0 a 9.

Nell'assegnazione variabile (primo parametro del ciclo for) dichiariamo intero i e gli assegniamo il valore di 0. Il limite massimo è impostato a i<10 in maniera da eseguire tante operazioni fino a quando i è minore di 10, cosicchè quando viene eseguita la prima operazione incrementiamo con i++ il valore di i, essendo il limite masismo impostato a i<10 quando i diventerà 9 il ciclo si interromperà scrivendo 9 come ultimo risultato.

Visualizziamo qualche altro esempio:

class ProvaFor2
{
public static void main(String args[])
{
for (int i=0, j=2; i<10; i++, j++)
{
System.out.println("i=" + i + " e j=" + j);
}
}
}

In questo caso utilizziamo due variabili locali: i e j, che si autoincrementano ma hanno valori differenti: infatti il valore iniziale di j è impostato a 2, quindi incomincierà da 2 e terminerà a 11.

// esempio cicli for annidati

class ProvaFor2
{
public static void main(String args[])
{
for (int i=1; i<11; i++)
{
for (int j=1; j<11; j++)
{
System.out.print(i*j + " ");
}
System.out.println();
}
}
}

Provate a compilare ed eseguire questo semplice programmino, ... esatto ciò che appare sullo schermo non è altro che la tavola pitagorica. Abbiamo cioè inserito un ciclo dentro un altro ciclo, e quindi per ogni numero j da 1 a 10 ne abbiamo moltiplicato per il numero i e restituito il risultato. Infine quando termina il primo ciclo di j scriviamo un ritorno a capo e ricominciamo con il prossimo numero i.

I cicli while sono differenti, non si usano le variabili con la formula dell'incremento, ma si eseguono cicli che terminano solo quando una condizione appare vera.

// esempio while

class ProvaWhile1
{
public static void main(String args[])
{
int i = 0;
while (i<10)
{
System.out.println(i);
++i;
/*
i++ imposta prima il valore di i e poi lo
incrementa ++i prima incrementa e
poi imposta il valore
*/
}
}
}

Questo esempio stampa il valore di i fino a quando i non diventa 10, in questo caso abbiamo dovuto dichiarare e assegnare prima il valore di i e dentro il blocco while abbiamo incrementato il suo valore. Prima di eseguire le istruzioni contenute nel blocco il compilatore controlla che la condizione sia vera. E' tuttavia possibile anche eseguire almeno una volta le istruzioni dentro il blocco while utilizzando do

// esempio do while

class ProvaWhile2
{
public static void main(String args[])
{
int i = 0;
do
{
System.out.println(i);
++i;
}
while (x<10);
}
}
 
Web     Top
0 replies since 7/5/2010, 21:48   133 views
  Share