Programmare in C# – I cicli

Corso C#

In alcune situazioni c’è la necessità di ricorrere a dei cicli o istruzioni di iterazione. In C#, questi possono essere costruiti grazie a quattro tipi di cicli: while, do-while, for e foreach. Le istruzioni di iterazione possono essere utilizzate per creare cicli per fare in modo che le istruzioni incorporate siano eseguite un determinato numero di volte, in base ai criteri di terminazione del ciclo.

Il ciclo while e do-while

L’istruzione while esegue un’istruzione o un blocco di istruzioni mentre un’espressione booleana specificata restituisce true. Poiché tale espressione viene valutata prima di ogni esecuzione del ciclo, un ciclo while viene eseguito zero o più volte. Questo comportamento è diverso dal ciclo do, che viene eseguito una o più volte.

In qualsiasi punto all’interno del blocco while è possibile uscire dal ciclo usando l’istruzione break.

È possibile passare direttamente alla valutazione dell’espressione while tramite l’istruzione continue. Se l’espressione restituisce true, l’esecuzione continua con la prima istruzione nel ciclo. In caso contrario, l’esecuzione continua con la prima istruzione dopo il ciclo.

Si può uscire da un ciclo while anche usando l’istruzione goto, return o throw.

Esempio:

using System;
class Loop
{
    public static void Main()
    {
        int NumIntero = 0;

        while (NumIntero < 5)
        {
            Console.Write("{0} ", NumIntero);
            NumIntero++;
        }
        Console.WriteLine();
    }
}

Nel codice visto sopra sopra usiamo il costrutto while, che significa che il codice all’interno delle sue parentesi graffe continua ad essere eseguito fino a quando la condizione risulta vera (il ciclo si interromperà, quindi, quando la condizione diventa falsa). Nel nostro esempio, all’interno del while viene incrementatala variabile numerica NumIntero fino a quando essa vale 4; successivamente la condizione di controllo (NumIntero < 5) non è più verificata e il ciclo viene terminato.

Ora vediamo un esempio con il costrutto do-while:

using System;
class Loop
{
    public static void Main()
    {
        int NumIntero= 0;
        do {
            Console.WriteLine(NumIntero);
            NumIntero++;
        }
        while (NumIntero< 5);
    }
}

Il costrutto do-while di C# è molto simile tranne che viene valutata la condizione while alla fine invece che all’inizio: di conseguenza l’istruzione all’interno del do verrà eseguita almeno una volta.

Il ciclo foreach

Vediamo il ciclo foreach in C# il quale consente di creare un’iterazione del contenuto di un array. In altre parole il ciclo si ripete per tanti quanti sono gli elementi del vettore.

Ecco un esempio:

using System;
class Loop
{
    public static void Main()
    {
        int[] variabile = new int[]{1,2,3};

        foreach (int b in variabile)
        {
            System.Console.WriteLine(b);
        }
    }
}

In questo caso vengono scorsi tutti gli elementi che fanno parte dell’array variabile, composto da 3 elementi di tipo intero. Vengono passati di volta in volta alla variabile “b” tutti i valori senza specificare una condizione, in quanto la “condizione implicita” che determina la conclusione del ciclo foreach è l’aver scorso tutti gli elementi.

Se l’istruzione foreach viene applicata a null, viene generata una NullReferenceException. Se la raccolta di origine dell’istruzione foreach è vuota, il corpo del ciclo foreach non viene eseguito e viene ignorato.

Il ciclo for

Il ciclo for e molto simile al while con la differenza che la variabile usata in questione viene incrementata ad ogni passaggio.

for esegue un’istruzione o un blocco di istruzioni mentre un’espressione booleana specificata restituisce true.

In un punto qualsiasi all’interno del blocco dell’istruzione for è possibile uscire dal ciclo usando l’istruzione break o passare all’iterazione successiva nel ciclo con l’istruzione continue. Si può uscire da un ciclo for anche usando l’istruzione goto, return o throw.

I cicli for di C# consentono dunque di ripetere una data operazione sulla base del valore di una data variabile di controllo.

Si usa in questo modo:


for (int a = 0; a < 5; a++)
{
    System.Console.WriteLine(a);
}

Il fulcro del codice è rappresentato dalle istruzioni all’interno della parentesi:

(int a = 0; a < 5; a++)

La prima parte è un’espressione, viene assegnato alla prima variabile “a” un valore (in questo caso il valore 0), dopo il punto e virgola si mette la condizione (in questo caso a < 5) e nella parte finale si indica che la variabile deve essere incrementata ad ogni iterazione. Il codice contenuto nel corpo del ciclo viene eseguito quindi fino a quando la condizione risulterà vera.

Articoli recenti

Commenti recenti

  1. Massimiliano Ferretti su I Commenti

    Mi permetto di aggiungere una mia considerazione personale che ho riportato dall'utilizzo di C#. Personalmente mi piace commentare funzioni e…

  2. Personalmente ritengo che utilizzare git porti sempre dei vantaggi anche per lo sviluppo solo. Già solo la possibilità di fare…

  3. ciao, il link a discord non è piu valido, vorrei utilizzare il materiale che hai pubblicato tempo fa, come faccio?

Itamde è anche una scuola di programmazione online.

Itamde

Impara ciò che desideri, al tuo ritmo

0 commenti

Invia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Potrebbe interessarti anche…

Le novità di Itamde Studio – Ottobre 2025

Le novità di Itamde Studio – Ottobre 2025

Tra creazioni, libri e un po’ di magia artigianale L’autunno è arrivato e Itamde Studio prosegue la sua stagione creativa con la consueta energia poliedrica: tra scrittura, web, video, artigianato e nuovi progetti in vista dei mercatini di fine anno. Questo mese di...

Rimani aggiornato sulle ultime notizie e novità

Accedi ai contenuti riservati

Scopri il dietro le quinte dei nostri progetti, risorse esclusive e lo stato di avanzamento delle nostre creazioni in tempo reale.

Iscriviti alla newsletter

Ricevi le nostre notizie, le nostre riflessioni creative e le novità dell’atelier direttamente nella tua casella di posta elettronica.

Seguici

Unisciti alla nostra community sui social network per seguire i nostri progetti quotidiani e interagire con noi.