Casino online











Mercato forex






A12. La struttura iterativa Do Loop


Abbiamo visto che esistono controlli per verificare condizioni, o anche per verificare in modo semplice e veloce molte ugualiglianze. Ora vedremo i cicli o strutture iterative (dal latino iter, itineris=viaggio). Essi hanno il compito di ripetere un blocco di istruzioni un numero determinato o indeterminato di volte. La prima che analizzeremo è appunto, la struttura Do Loop, di cui esistono molte varianti. La più semplice, ma anche la più inutile, a meno che non si lavori in ambiente grafico, è questa:
Do
  'istruzioni
Loop 
Ripete delle istruzioni un numero infinito di volte e l'unico modo per uscire dal ciclo è usare una speciale istruzione: 'Exit Dò, la quale ha il compito di interrompere il ciclo ed uscire da esso. Sostanzialmente, questa variante viene usata solo quando si lavora con la grafica e le librerie DirectX, per disegnare a schermo i costanti cambiamenti del mondo 2D o 3D. Le versioni che ci interessano sono queste:
  • Do
        'istruzioni
    Loop While [condizione] 
    Esegue le istruzioni specificate fintanto che una condizione rimane valida, ma tutte le istruzioni vengono eseguite almeno una volta, poichè While si trova dopo Do
  • Do While [condizione]
        'istruzioni
    Loop 
    Esegue le istruzioni specificate fintanto che una condizione rimane valida, ma se la condizione non è valida all'inizio, non viene eseguita nessuna istruzione nel blocco
  • Do
        'istruzioni
    Loop Until [condizione] 
    Esegue le istruzioni specificate fino a che non viene verificata la condizione, ma tutte le istruzioni vengono eseguite almeno una volta, poichè Until si trova dopo Do
  • Do Until [condizione]
        'istruzioni
    Loop 
    Esegue le istruzioni specificate fino a che non viene soddisfatta la condizione, ma se la condizione è valida all'inizio, non viene eseguita nessuna istruzione del blocco
Un piccolo esempio:
Module Module1
    Sub Main()
        Dim a, b As Double

        Do
            'Pulisce lo schermo
            Console.Clear()
            Console.WriteLine("Inserire le misure base e altezza di " & _
		    "un rettangolo. Inserire 0 due volte per terminare.")
            a = Console.ReadLine
            b = Console.ReadLine

            Console.WriteLine("L'area del rettangolo è: " & a * b)
            Console.ReadKey()
            'Ricordate che nelle condizioni si possono sempre usare 
            'i connettivi logici
        Loop Until b = 0 And a = 0
    End Sub
End Module 
Il programma chiede di inserire base e altezza di un rettangolo un numero illimitato di volte, ma se sia a che b equivalgono a 0, il programma termina. Nonstante ciò il ciclo viene eseguito almeno una volta perchè di default le variabili sono sempre impostate a 0.

Suggerimento Per impostare il valore di Default di una variabile si può usare questa sintassi:
Dim [nome] As [tipo] = [valore] 
Funziona solo per una variabile alla volta.






 

The Totem's Lair - Copyright (C) 2009
È vietata la riproduzione sia totale che parziale del sito.