Il ciclo For…Next [vb6]

I cicli in informatica si usano per comporre un certo numero di operazioni uguali.
Uno dei modi per comporre un numero un certo numero volte è quello di usare il ciclo For…Next, vediamo come funziona.

Creiamo nell’ oggetto 4 label e 1 bottone, 2 label serviranno per far comparire il risultato, le altre 2, come vedremo in seguito, non saranno utilizzate, il bottone serve per far partire il programma.

Nomi delle label:

  • 1^ label inutilizzata: “sommap”
  • 2^ label inutilizzata: “sommad”
  • 1^ label utilizzata: “Label1″
  • 2^ label utilizzata: “Label2″
  • bottone: “Command1″

Sommap e sommad non sono utilizzate e servono per “tenere il testo scritto”.
Label1 e Label2, invece, sono utilizzate per far comparire il risultato della nostra operazione: Label1 per i pari e Label2 per i dispari.

Andiamo a vedere ora il codice e come funziona il ciclo For.

Sotto Option Explicit inseriamo i valori “sommapari”, “sommadispari” (servono per il calcolo finale), “i”, “N” (utilizzati nel ciclo).

Ho fatto assumere a sommapari e sommadispari valore doppio (As Double), in questo modo il calcolo può essere più alto, se avessi messo As Integer il programma sarebbe andato in overflow (in poche parole quando mostra il messaggio d’ errore) con numeri molto piccoli; “i” e “N” invece assumono valori interi in modo da far risultare i 2 valori finali numeri interi.

Il ciclo For…Next è abbastanza complicato da imparare da solo, cercherò di spiegarvelo nel miglior modo possibile in modo da farvi capire subito.

——————————————–

For (indice) = (val. min.) To (val. max.)
(istruzioni)
Next (indice)

——————————————–

For i = 1 To N
   If i Mod 2 = 0 Then
   sommapari = sommapari + i
   Else
   sommadispari = sommadispari + i
   End If
Next i

——————————————–

L’ indice (“i” nel secondo es.) assume un valore che va da 1 a N.
(Istruzioni): ho inserito un If: Se il numero inserito diviso per 2 da resto 0 (Mod da il resto di una divisione) allora è pari, altrimenti è dispari.

Se non avete ancora capito provate a scrivere un nuovo programma vostro simile a questo.

Ecco come funziona il ciclo For, ma il codice non è solo questo:

——————————————–

Option Explicit

Dim sommapari As Double
Dim sommadispari As Double
Dim i As Integer
Dim N As Integer

Private Sub Command1_Click()
sommapari = 0
sommadispari = 0
N = Val(InputBox(“Inserisci un numero intero positivo”))

For i = 1 To N
   If i Mod 2 = 0 Then
   sommapari = sommapari + i
   Else
   sommadispari = sommadispari + i
   End If
Next i
Label1.Caption = sommapari
Label2.Caption = sommadispari
End Sub

——————————————–

Il resto del codice è molto semplice e facile da interpretare, InputBox serve a inserire il numero da calcolare, anche i numeri a doppia precisione hanno un valore massimo, quindi se si inserisce un numero troppo alto il programma andrà in overflow.

Ciclo for con step

Se inseriamo a fianco a “For i = 1 To N”: “Step 2″ il programma andrà a calcolare i numeri a 2 a 2, e così via cambiando il numero.

Il ciclo For…Next non è l’ unico ad essere in grado di eseguire una serie di comandi tutti in una volta, esiste anche il ciclo Do, che vedremo la prossima volta :) .

Download

Lascia un Commento

Fill in your details below or click an icon to log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Log Out / Modifica )

Foto Twitter

You are commenting using your Twitter account. Log Out / Modifica )

Foto di Facebook

You are commenting using your Facebook account. Log Out / Modifica )

Connecting to %s

Iscriviti

Get every new post delivered to your Inbox.