+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 5 su 5

spiegazione sui Cicli for

  1. #1
    Smith non  in linea Scolaretto
    Post
    294
    Like Inviati  
    0
    Like Ricevuti  
    0
    salve non capisco una cosa

    se metto un ciclo for in un altro che funzione mi dar

    tipo


    For y = 1 to 3

    for i = 1 to 1000


    next i

    nex y

    il primo ciclo y e gira fino a 3
    il secondo ciclo si ferma prima di arrivare a 1000?

    fatemi capire il metodo grazie

  2. #2
    L'avatar di maximum
    maximum non  in linea Scolaretto
    Post
    468
    Like Inviati  
    0
    Like Ricevuti  
    0
    No, il secondo ciclo itera comunque 1000 volte, mentre il primo 3 volte.
    Complessivamente ci saranno 3000 iterazioni.

    Puoi comunque scrivere:

    For y = 1 to 3

    for i = 1 to 1000


    next

    next

  3. #3
    L'avatar di TheTruster
    TheTruster non  in linea Moderatore Globale Ultimo blog: Mouse Wheel in Visual Basic 6 - ActiveX
    Post
    7,245
    Blogs
    3
    Like Inviati  
    19
    Like Ricevuti  
    13
    i cicli scritti sotto questo tipo di struttura vengono chiamati "nidificati" poichè, come è facile notare, sono posti uno dentro l'altro.

    come puoi vedere, le variabili accanto ad ogni next sono in una sequenza che rispetta l'ordine inverso dell'apertura di ogni ciclo.
    già questo ti fa pensare che il ciclo più interno viene eseguito il numero di volte "comandato" dal ciclo più esterno.

    quindi, come ti faceva notare Maximum, il ciclo For i = 1 to 1000 verrà eseguito 3 volte... per un totale di 3000 iterazioni.

    se avessi una struttura del genere, invece:

    For A = 1 to 10
        For B = 1 to 20
            For C = 1 to 30
            ....
            ....
            Next C
        Next B
    Next A
    
    il ciclo B verrà eseguito 10 volte, il ciclo C invece 200 volte quindi C subirà 600(*) iterazioni...

    puoi nidificare un numero indefinito di cicli, se hai la necessità di farlo... e quindi, benchè non sia strettamente necessario per la correttezza della sintassi, ti consiglio di specificare sempre la variabile su cui è impostato il ciclo, nell'istruzione Next.

    per interrompere l'esecuzione di un ciclo al verificarsi di una certa condizione è possibile utilizzare l'istruzione Exit For.

    (*) errata corrige : sono 6000 iterazioni.

    TheTruster
    ℹ️ Leggi di pi su TheTruster ...

  4. #4
    L'avatar di Cteniza
    Cteniza non  in linea Amanuense
    Post
    4,378
    Blogs
    36
    Like Inviati  
    0
    Like Ricevuti  
    0
    Solo per correggere un piccolo errorino:
    Domanda: Quante iterazioni di C?
    Risposta: iterazioni di A (10) * iterazioni di B (20) * iterazioni di C (30) = 10 * 20 * 30 = 6000

  5. #5
    L'avatar di TheTruster
    TheTruster non  in linea Moderatore Globale Ultimo blog: Mouse Wheel in Visual Basic 6 - ActiveX
    Post
    7,245
    Blogs
    3
    Like Inviati  
    19
    Like Ricevuti  
    13
    ecco cos'era lo 0 che mi avanzava sulla tastiera!

    TheTruster
    ℹ️ Leggi di pi su TheTruster ...

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Spiegazione su query sql
    Da freddy60 nel forum Visual Basic .Net
    Risposte: 30
    Ultimo Post: 05-12-2020, 22:52
  2. Spiegazione formula
    Da niccoflo nel forum Microsoft Excel
    Risposte: 10
    Ultimo Post: 17-11-2013, 22:36
  3. Richiesta spiegazione classi
    Da diegs nel forum Visual Basic .Net
    Risposte: 7
    Ultimo Post: 25-05-2012, 19:30
  4. Spiegazione query
    Da federico p nel forum Microsoft Word
    Risposte: 16
    Ultimo Post: 15-02-2010, 16:47
  5. Spiegazione enabled
    Da lorepc88 nel forum Visual Basic 6
    Risposte: 6
    Ultimo Post: 27-04-2006, 16:32