Differenze tra le versioni di "SELECT CASE...CASE...END SELECT"

Da Gambas-it.org - Wikipedia.
 
Riga 6: Riga 6:
 
   CASE ''variabile(3)''
 
   CASE ''variabile(3)''
 
   <<vostro codice 3>>
 
   <<vostro codice 3>>
 +
  CASE ELSE oppure DEFAULT
 +
  <<vostro codice 4>>
 
  END SELECT  
 
  END SELECT  
 
''' Esegue del codice previa verifica della condizione '''
 
''' Esegue del codice previa verifica della condizione '''
 
----
 
----
 
  
 
''Spiegazione''
 
''Spiegazione''
 
Ogni valore che assume variabile esegue il codice successivo alla verifica.
 
Ogni valore che assume variabile esegue il codice successivo alla verifica.
Questa funzione è simile a  
+
Questa funzione è simile a [[If..Then..Else]] con la differenza che è più immediata e pulita la lettura del codice.
 
+
Inoltre è possibile gestire il flusso di dati in modo che in caso non sia soddisfatta nessuna condizione il sistema esegua qualche cosa, questo è possibile tramite '''CASE ELSE''' o '''DEFAULT'''.
''Esempio 1'' - '''Verifica condizionale immediata'''
 
 
 
IF variabile1 = variabile2 THEN <<vostro codice>>
 
''Spiegazione''
 
 
 
Se il valore di variabile1 è uguale a variabile2 allora esegui <<vostro codice>>.
 
 
 
In questo caso <<vostro codice>> sarà un'istruzione semplice ed immediata (un assegnazione di un valore ad una variabile, un uscita dal programma, una chiamata di un funzione).
 
 
 
 
 
''Esempio 2'' - '''Verifica condizionale complessa'''
 
 
 
IF variabile1 = variabile2 THEN
 
<<vostro codice>>
 
ENDIF
 
 
 
''Spiegazione''
 
 
 
Se il valore di variabile1 è uguale a variabile2 allora esegui <<vostro codice>>.
 
 
 
In questo caso <<vostro codice>> può essere anche di natura complessa (cicli For..Next, ulteriori istruzioni If..Then, ecc.).
 
L'istruzione ENDIF comunica al sistema la "chiusura" della verifica condizionale.
 
 
 
 
 
''Esempio 3'' - '''Verifica condizionale multipla'''
 
 
 
IF variabile1 = variabile2 THEN
 
<<vostro codice 1>>
 
ELSE
 
<<vostro codice 2>>
 
ENDIF
 
 
 
''Spiegazione''
 
 
 
Se il valore di variabile1 è uguale a variabile2 allora esegui <<vostro codice 1>>, altrimenti esegui <<vostro codice 2>>.
 
 
 
 
 
Le possibile scelte condizionali che offre l’istruzione IF…THEN sono:
 
 
 
'''=''' uguale (variabile1 = variabile2)
 
 
 
'''>''' maggiore (variabile1 > variabile2)
 
 
 
'''<''' minore (variabile1 < variabile2)
 
 
 
'''<>''' diverso (variabile1 <> variabile2)
 
 
 
'''>=''' maggiore o uguale (variabile1 >= variabile2)
 
  
'''<=''' minore o uguale (variabile1 <= variabile2)
+
Esempio 1

Versione delle 14:15, 21 gen 2008

SELECT CASE variabile
 CASE variabile(1)
 <<vostro codice 1>>
 CASE variabile(2)
 <<vostro codice 2>>
 CASE variabile(3)
 <<vostro codice 3>>
 CASE ELSE oppure DEFAULT
 <<vostro codice 4>>
END SELECT 

Esegue del codice previa verifica della condizione


Spiegazione Ogni valore che assume variabile esegue il codice successivo alla verifica. Questa funzione è simile a If..Then..Else con la differenza che è più immediata e pulita la lettura del codice. Inoltre è possibile gestire il flusso di dati in modo che in caso non sia soddisfatta nessuna condizione il sistema esegua qualche cosa, questo è possibile tramite CASE ELSE o DEFAULT.

Esempio 1