Impara a ripetere operazioni con for, while e do-while.
🎮 Mettilo in pratica: nel corso JavaScript interattivo – progetti c'è la lezione Lezione 9 – Cicli che creano: generatore di quadrati, tabelline e una galleria di foto costruita con i cicli.
➕ Altri esempi: Approfondimento: condizioni e cicli a confronto.
Cos'è un Ciclo?
Un ciclo permette di ripetere un blocco di codice più volte.
Cicli nella Vita Reale
- Lavare piatti → Per ogni piatto: lava, risciacqua, asciuga
- Leggere libro → Finché ci sono pagine: leggi pagina
- Salire scale → Ripeti 20 volte: fai gradino
Ciclo for
Il ciclo for è il più usato quando sai quante volte ripetere.
Sintassi for
for (inizializzazione; condizione; incremento) {
// Codice ripetuto
}
// Esempio: Conta da 1 a 5
for (let i = 1; i <= 5; i++) {
console.log(i);
}
// Output: 1, 2, 3, 4, 5
FOR su Array
let frutti = ["mela", "banana", "kiwi"];
for (let i = 0; i < frutti.length; i++) {
console.log((i+1) + ". " + frutti[i]);
}
// 1. mela
// 2. banana
// 3. kiwi
Ciclo while
Il ciclo while ripete finché la condizione è vera.
Sintassi while
while (condizione) {
// Codice ripetuto
}
// Esempio
let i = 1;
while (i <= 5) {
console.log(i);
i++; // IMPORTANTE!
}
⚠️ Attenzione Loop Infiniti!
Ricorda sempre di incrementare il contatore!
Ciclo do-while
Il ciclo do-while esegue almeno una volta, poi controlla.
Sintassi do-while
do {
// Eseguito ALMENO UNA VOLTA
} while (condizione);
// Esempio
let i = 1;
do {
console.log(i);
i++;
} while (i <= 5);
break e continue
break - Esce dal Ciclo
// Cerca primo numero pari
for (let i = 1; i <= 10; i++) {
if (i % 2 === 0) {
console.log("Primo pari: " + i);
break; // Esce dal ciclo
}
}
// Output: Primo pari: 2
continue - Salta Iterazione
// Stampa solo dispari
for (let i = 1; i <= 10; i++) {
if (i % 2 === 0) {
continue; // Salta i pari
}
console.log(i);
}
// Output: 1, 3, 5, 7, 9
Cicli Annidati
Un ciclo dentro un altro ciclo (es: tabelle, matrici).
Tabella Moltiplicazione
for (let i = 1; i <= 5; i++) {
for (let j = 1; j <= 5; j++) {
console.log(i + " x " + j + " = " + (i*j));
}
}
Esempi Pratici
Esercizi Pratici
Esercizio 1: Tabella Pitagorica
Obiettivo: Crea tabella moltiplicazione 10x10
- Usa cicli annidati
- Formatta output
Esercizio 2: FizzBuzz
Obiettivo: Stampa da 1 a 100
- Multiplo di 3: "Fizz"
- Multiplo di 5: "Buzz"
- Multiplo di entrambi: "FizzBuzz"
Esercizio 3: Numeri Primi
Obiettivo: Trova tutti i numeri primi fino a N
- Verifica divisibilità
- Usa break per ottimizzare
🎯 Riepilogo Lezione
for
- Iterazioni note
- 3 parti: init, cond, incr
while
- Condizione all'inizio
- Può non eseguire mai
do-while
- Almeno 1 volta
- Condizione alla fine
break/continue
- break: esce
- continue: salta