Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Esempio di ciclo For Each
Forum - Visual Basic 6 - Esempio di ciclo For Each

Avatar
bossov2007 (Normal User)
Newbie


Messaggi: 8
Iscritto: 13/11/2007

Segnala al moderatore
Postato alle 18:38
Mercoledì, 21/11/2007
Ciao a tutti, non ho capito bene come si riporta su codice il ciclo For Each, dovrei sostituire il codice seguente con tale ciclo per la ListBox... secondo quanto richiesto dal mio professore -.- ma nn riesco proprio! Aiutatemi! ecco il codice...
Codice sorgente - presumibilmente VB.NET

  1. Private Sub cmdCalcolaMedia_Click()
  2. Dim Numero1 As Double, Numero2 As Double, Numero3 As Double
  3.    
  4.     If IsNumeric(lstNumeri.List(0)) And IsNumeric(lstNumeri.List(1)) And IsNumeric(lstNumeri.List(2)) Then
  5.         Numero1 = CDbl(lstNumeri.List(0))
  6.         Numero2 = CDbl(lstNumeri.List(1))
  7.         Numero3 = CDbl(lstNumeri.List(2))
  8.    
  9.         MsgBox "La media dei numeri è: " & CStr(Media(Numero1, Numero2, Numero3)), vbInformation + vbOKOnly, "Calcolo Media"
  10.     Else
  11.         MsgBox "Inserire i numeri mancanti!", vbCritical + vbOKOnly, "Attenzione!"
  12.     End If
  13.    
  14. End Sub




Ultima modifica effettuata da gius il 21/11/2007 alle 21:54
PM Quote
Avatar
LuigiBiasi (Normal User)
Expert


Messaggi: 237
Iscritto: 15/09/2006

Segnala al moderatore
Postato alle 19:02
Mercoledì, 21/11/2007
deve essere perforza un ciclo for each, non va bene un ciclo for semplice??

PM Quote
Avatar
LuigiBiasi (Normal User)
Expert


Messaggi: 237
Iscritto: 15/09/2006

Segnala al moderatore
Postato alle 19:14
Mercoledì, 21/11/2007
comunque con un ciclo for semplice la soluzione è facile:
Codice sorgente - presumibilmente VB.NET

  1. dim a, b,c as double
  2. dim i as integer
  3. 'se non hai ancora fatto gli array
  4. for i=0 to list1.listcount
  5. if i =0 then
  6. a = cdbl(List1.List(i))
  7. elseif i= 1 then
  8. b = cdbl(List1.List(i))
  9. elseif i = 2 then
  10. c = cdbl(List1.List(i))
  11. end if
  12. next i


Con un cliclo for each ci devo pensare un po su.
Ciao.

Ultima modifica effettuata da LuigiBiasi il 21/11/2007 alle 19:16
PM Quote
Avatar
bossov2007 (Normal User)
Newbie


Messaggi: 8
Iscritto: 13/11/2007

Segnala al moderatore
Postato alle 20:25
Mercoledì, 21/11/2007
no lui vuole proprio che impariamo quel ciclo.. l'ho capito anche io ke è inutile, è solo per impararlo su quest'esempio :)

PM Quote
Avatar
P4p3r0g4 (Member)
Guru


Messaggi: 1319
Iscritto: 29/12/2006

Segnala al moderatore
Postato alle 23:52
Mercoledì, 21/11/2007
il problema è che la listbox è una falsa collection.
in vb6 è impossibile.
ovvero è ottenibile solo usando un'altra collection come controllo ma a questo punto usi il ciclo for normale,no?

PM Quote
Avatar
bossov2007 (Normal User)
Newbie


Messaggi: 8
Iscritto: 13/11/2007

Segnala al moderatore
Postato alle 17:41
Giovedì, 22/11/2007
Cess il mio prof è scemo :P gli dirò qll ke mi hai detto tu, grazie ;) quindi un esempio di caso in cui è utile il for each?? nn l'ho ancora capito ... -.-

PM Quote
Avatar
P4p3r0g4 (Member)
Guru


Messaggi: 1319
Iscritto: 29/12/2006

Segnala al moderatore
Postato alle 23:37
Giovedì, 22/11/2007
beh sinceramente l'ho usato solo 1 volta e alla fine l'ho tolto perchè "paralizza" l'oggetto.
se il tuo prof riesce a usare il for each nelle listbox fammelo sapere che è un po di tempo che ci provo (ogni volta devo inserire una variabile per il for e alla fine finisco le lettere dell'alfabeto)
un esempio del for each?
for each element in collection..

puo servire per gli array ma sinceramente è una perdita di tempo e ti intrighi sempre..

PM Quote