Corso di ASP

Strutture di controllo del linguaggio VBScript II

 

1.2 Strutture di controllo della logica condizionale

Nella logica condizionale le istruzioni da tenere a mente sono due : If….Then… Else e Select Case.

1.2.1 Istruzione If….Then.....Else

Quest’istruzione di controllo si usa se bisogna eseguire una porzione di codice solo se si verificata una condizione.
Ecco la sintassi.

1- If (condizione) Then
2- (istruzioni)
3- (ElseIf (condizione) Then)
4- (istruzioni)
5- (Else)
6- (istruzioni)
7- End If

Nella riga 1 il programma verifica se la porzione di codice compresa in condizione restituisce un risultato positivo, cio se la condizione si verificata.
Se il risultato positivo viene processata la riga 2, cio le istruzioni che inserirete.
La riga 3 utilizzata se esistono pi condizioni esclusive da verificare.
La riga 5 utilizzata se vogliamo eseguire delle istruzioni nel caso nessuna condizione precedente sia soddisfatta.
La riga 7 chiude l’istruzione.

Eccovi un esempio:

<%@ Language = VBScript %>
<% Option Explicit %>
<%
DIM anni

anni = 35
If anni <= 0 Then
Response.Write “Dato immesso non reale !!!”
ElseIf 1 <= anni <= 25 Then
Response.Write “Hai tra gli 1 e i 25 anni”
ElseIf 25 < anni <= 50 Then
Response.Write “Hai tra i 26 e i 50 anni”
ElseIf 50 < anni <= 75 Then
Response.Write “Hai tra i 51 e i 75 anni”
ElseIf 75 < anni <= 100 Then
Response.Write “Hai tra i 76 e i 100 anni”
Else
Response.Write “Complimenti per l’et raggiunta”
End If %>

esempio 1

Nell’esempio 1 creiamo una variabile di nome anni e gli assegniamo il valore 35. Eseguiamo l’istruzione If. Se il valore minore o uguale a zero viene generata una frase di avvertimento, altrimenti viene letta la frase racchiusa nella condizione soddisfatta dal valore della variabile. Se nessuna delle condizioni ElseIf soddisfatta generiamo un messaggio di default, tramite Else per fargli i complimenti per l’et raggiunta.

Solo l’If iniziale obbligatorio, mentre le altre condizioni come ElseIf ed Else sono facoltative.
Si noti infine che possibile inserire istruzioni If all’interno di altre istruzioni If, ma se possibile evitatelo, rischiate di generare molta confusione se ci sono troppi annidamenti.

1.2.2 Select Case

Questa istruzione usata quando bisogna eseguire una porzione di codice in base al valore di un’espressione.
Ecco la sintassi:

1- Select Case (espressione)
2- Case valore1
3- (istruzioni di codice)
4- …………………………
5- (Case Else)
6- (istruzioni di codice)
7- End Select

Nella riga 1 il programma valuta la porzione di codice compresa in espressione. Il risultato viene poi sottoposto ai valori presenti nei vari Case, quando una condizione Case viene verificata processato il gruppo di istruzioni che segue.
Nel caso nessun Case sia soddisfatto si pu inserire un Case Else come condizione di default.

Eccovi un esempio:

<%@ Language = VBScript %>
<% Option Explicit %>
<%
DIM operazione

operazione = “moltiplicazione”
Select Case tipo

Case “moltiplicazione”, “MOLTIPLICAZIONE”
Response.Write “Hai richiesto una moltiplicazione”

Case “sottrazione”, “SOTTRAZIONE”
Response.Write “Hai richiesto una sottrazione”

Case “divisione”, “DIVISIONE”
Response.Write “Hai richiesto una divisione”

Case “addizione”, “ADDIZIONE”
Response.Write “Hai richiesto una addizione”

Case Else
Response.Write “L’operazione richiesta sconosciuta”

End Select
%>


esempio 2

Nell’esempio quando il valore di operazione corrisponde ad una condizione Case vengono eseguite le istruzioni che seguono quest’ultima, altrimenti se non ne viene verificata neanche una generata automaticamente una frase di avvertimento con Case Else.
Per ogni Case possibile specificare pi valori (es. : “sottrazione”, “SOTTRAZIONE”)
Notate che a differenza dell’istruzione Case usata nei normali linguaggi di programmazione, se verificato un Case sono eseguite le istruzioni che lo riguardano e basta, non anche quelle dei Case successivi, come avviene per esempio nel C++ e via dicendo.

Questo tutto sulle istruzioni condizionali, nella prossima lezioni vedremo i controlli della logica ciclica.

 

Torna all'indice Generale del corso di Corso di ASP di Software Planet