Istruzioni di controllo: condizioni e iterazioni | |
![]() |
|
| |
|
ASP Center
Articoli
Referenze
Script
FAQ
Downloads
Siti utili
ASP
E-Commerce con ASP
Menu Javascript
Ricette
Cocktail
Registrazione domini
Area Aziende
|
Istruzioni di controllo: condizioni e iterazioni
Per una corretta gestione del flusso di un programma, o di uno script che dir si voglia, è necessario avvalersi di alcune caratteristiche del linguaggio utilizzato per impostare condizioni sugli eventi ed iterazioni sui dati. Si tratta di caratteristiche comuni a qualsiasi linguaggi e prendono il nome di istruzioni di controllo.
Le istruzioni di controllo si dividono in due macro categorie
Istruzioni condizionali Le istruzioni condizionali, come il loro nome lascia ad intendere, impostano delle condizioni in base alle quali si verificheranno determinate circostanze piuttosto che altre. Si utilizzano una serie di comandi la cui gestione e filosofia è molto simile al linguaggio umano. Ad esempio "se domani piove resto a casa, altrimenti esco". La condizione di base è la pioggia ed in funzione che sia vera o falsa (che piova o meno) il risultato sarà differente (resto a casa o esco). Facciamo un esempio più vicino all'informatica. Verifichiamo che due stringhe siano uguali e scriviamo a video un messaggio differente
<%
Dim a, b
a = "pippo"
b = "pluto"
If a = b Then
Response.Write "Stringhe uguali"
Else
Response.Write "Stringhe diverse"
End If
%>
In questo caso le stringhe sono diverse, quindi riceveremo il secondo messaggio. Proviamo ed impostare una condizione in base ad un calcolo numerico
<%
Dim a, b, c
a = 3
b = 5
c = a + b
If c = 8 Then
Response.Write c & " è uguale a 8"
Else
Response.Write c & " è diverso da 8"
End If
%>
Dato che 3 + 5 = 8 e la condizione vuole che il risultato (memorizzato nella variabile c) sia uguale a 8, la condizione è soddisfatta, quindi il messaggio restituito dalla routine sarà il primo.Una volta entrati nell'ordine di idee di cosa vuol dire utilizzare delle istruzioni condizionali, vediamo quali sono i comandi che abbiamo utilizzato: If apre la condizione, Then specifica cosa deve succedere se la condizione viene soddisfatta, Else apre un blocco di istruzioni alternative nel caso in cui la condizione non viene soddisfatta, End If chiude la condizione. Esiste anche la possibilità di gestire condizioni di livello intermedio col comando ElseIf. Vediamo come
<%
Dim a
a = 10
If a = 0 Then
Response.Write "a = 0"
ElseIf a = 5 Then
Response.Write "a = 5"
Else
Response.Write "a = " & a
End If
%>
Verifichiamo che a valga 0, poi che a valga 5 ed in fine, se nessuna delle condizioni viene soddisfatta, ci arrendiamo e ci facciamo dire dallo script il valore di a.Nel caso in cui una condizione debba verificare che ci sia una sola soluzione ed in base a quella restituire un valore, possiamo scrivere il codice anche su di una sola riga, rendendo opzionale l'istruzione di chiusura
<%
Dim a
a = 10
If a = 10 Then Response.Write "Condizione soddisfatta"
%>
Esiste anche la possibilità di utilizzare una serie di istruzioni differenti da quelle appena elencate, ovvero il comando Select Case. Vediamo brevemente come funziona traducendo l'ultimo esempio esaminato
<%
Dim a
a = 10
Select Case a
Case 0 : Response.Write "a = 0"
Case 5 : Response.Write "a = 5"
Case Else : Response.Write "a = " & a
End Select
%>
Le righe con istruzioni Case indicano tutti i vari casi che potrebbero rappresentare il soddisfacimento della condizione, mentre Case Else indica tutti gli altri casi. I due punti (:) in VBScript separano due righe di comando che altrimenti dovrebbero essere scritte a capo, come nel codice che segue
<%
Dim a
a = 10
Select Case a
Case 0
Response.Write "a = 0"
Case 5
Response.Write "a = 5"
Case Else
Response.Write "a = " & a
End Select
%>
Istruzioni di iterazionePassiamo adesso alle istruzioni iterazione. I principali comandi per la gestione di quelli che vengono definiti cicli sono
<%
Dim i
i = 1
For i = 1 To 10
Response.Write i & "<br>"
Next
%>
Stampa a video
1 2 3 4 5 6 7 8 9 10Il comando Next provvede a chiudere l'istruzione For ed a muoversi verso la prossima iterazione, finchè la condizione i = 1 To 10 non viene soddisfatta. Facciamo adesso un esempio dell'utilizzo dell'istruzione While, traducendo l'esempio precedente
<%
Dim i
i = 1
While i <= 10
Response.Write i & "<br>"
i = i + 1
Wend
%>
Il risultato stampato a video è analogo al precedente.Il comando Wend chiude l'istruzione While ma l'incremento non avviene direttamente ma va forzato incrementando di una unità il valore di i i = i + 1L'utilizzo dei cicli è determinante nell'interrogazione dei database e dei file XML, stampando a video in sequenza tutti i dati richiesti. |
Newsletter
Stringhe di Conn.
|
||
| © 2008 ASP Center di Luca Ruggiero - P. IVA 05564851219 - Disclaimer | Privacy | Pubblicità | Supportaci | Staff | Contatti | ||||
| Appunti PHP | Giornale Webmaster | Mr.Webmaster | Download | DevSpy.com | ASPCode.it | ClaudioGarau.it | Webmaster Facile | Come Faccio | AlVerde.net | CodiceFacile.it | I Programmatori | By Luciani | VoiceXML Italian User Group | Giochi | Extro Web Site | Morpheus Web | AG Web Solutions | Net-Free | PC Sicuro | PC Self | Tutorial Web | Dablones | ||||