Da zero ad eroe
Entra nel mondo della programmazione web: variabili, funzioni, array, DOM, eventi. Con esercizi pratici e progetti coinvolgenti.
- ⏱️ 8 ore di corso registrato
- 🧩 Più di 50 algoritmi risolti passo passo
- 🎯 Livello base — da zero ad eroe
- 💻 100% online, fruibile quando vuoi
Per tenere traccia dei conteggi separati di numeri pari e dispari, useremo quindi due variabili distinte. Queste variabili conterranno i totali aggiornati man mano che il ciclo scorre attraverso i numeri inseriti. In alternativa possiamo sottrarre il conteggio dei numeri pari (o dispari) dal totale degli elementi, ottenendo così il conteggio dei numeri dispari (o pari).
Nel nostro caso scegliamo di utilizzare 2 variabili, contap per il conteggio dei pari, contad per il conteggio dei dispari. Entrambe le variabili devono essere inizializzate a 0 e poi incrementate quando soddisfano la condizione.
Ecco dunque una possibile soluzione all'algoritmo proposto che utilizza il ciclo for in JavaScript:
let numero;
let contap = 0;
let contad = 0;
for (let i = 0; i < 20; i++) {
numero = parseInt(prompt('Inserisci un numero'));
if (numero % 2 === 0) {
contap++;
} else {
contad++;
}
}
console.log(`Numeri pari: ${contap}\nNumeri dispari: ${contad}`);
Il risultato ottenuto lo visualizziamo semplicemente con un console.log, ma chiaramente si potrebbe anche visualizzare nella pagina HTML, utilizzando i metodi del DOM.
Ciclo for JavaScript - Secondo esercizio
Esercizio: Inserite in input 10 numeri interi, attraverso un prompt e contare quanti di essi sono positivi, quanti negativi e quanti nulli.
Questo algoritmo è una variante del primo. Difatti il ragionamento è identico, cambia solo la condizione da impostare all'interno dell'if.
Inoltre questa volta le condizioni sono 3, dunque serviranno 2 if.
Questa volta ho avuto bisogno di 3 variabili per memorizzare i differenti conteggi.
Innanzitutto dichiariamo le variabili: numero, contaPos, contaNeg e contaZero utilizzando il keyword let, in quanto cambieremo il valore più avanti. Dopo usiamo un ciclo for per iterare 10 volte. La variabile i viene inizializzata a 0 e viene incrementata ad ogni iterazione finché non raggiunge il valore 10. Durante ogni iterazione del ciclo, viene visualizzato un prompt che chiede all'utente di inserire un numero intero. Questo numero viene convertito in un intero utilizzando parseInt() e assegnato alla variabile numero.
Dopo il numero inserito viene valutato attraverso una serie di condizioni if-else:
- Se il numero è maggiore di zero, incrementiamo
contaPos.
- Altrimenti se il numero è minore di zero, incrementiamo
contaNeg.
- Altrimenti se il numero è uguale a zero, incrementiamo
contaZero.
Dopo che il ciclo è completato, vengono visualizzati i conteggi attraverso tre chiamate a console.log(), che mostrano il numero di numeri positivi, negativi e zeri inseriti dall'utente. Chiaramente potevamo stampare tutto nel console.log().
Ecco dunque il codice di esempio che utilizza il ciclo for in JavaScript:
let numero;
let contaPos = 0;
let contaNeg = 0;
let contaZero = 0;
for (let i = 0; i < 10; i++) {
numero = parseInt(prompt('Inserisci un numero'));
if (numero > 0) {
contaPos++;
} else if (numero < 0) {
contaNeg++;
} else {
contaZero++;
}
}
console.log(`Numeri positivi: ${contaPos}`);
console.log(`Numeri negativi: ${contaNeg}`);
console.log(`Zeri: ${contaZero}`);
Conclusione
In questa lezione abbiamo visto come svolgere alcuni semplici algoritmi con l'utilizzo del ciclo for in JavaScript, nelle prossime lezioni affronteremo tanti altri esercizi.
Alcuni link utili
Corso linguaggio JavaScript
Libro JavaScript
Indice tutorial JavaScript
Istruzione condizionale if else
Esercizi sulle istruzioni condizionali
Come utilizzare il console log in JavaScript