Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [VB] come si utilizza la ricorsione?

    Ciao a tutti, ho fatto una ricerca ma non ho trovato nulla!
    Nessuno ha mai avuto il mio problema!

    Mi piacerebbe capire la ricorsione in VB; quando posso utilizarla e soprattutto quando mi conviene farlo!

    Penso mi potreste chiarire le idee con un esempio di potenza!!! Grazie!
    jabjoint

  2. #2
    un procedura ricorsiva è semplicemente una procedura che richiama se stessa n volte è potente se riesci a controllare le ricorsione diventa dannosa se sfugge al controllo e si richiama anche per niente
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  3. #3
    grazie, ma questo lo sapevo anche io, volevo capire come usarla in una "semplice" funzione!

    potresti spiegarmi come?
    jabjoint

  4. #4
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    l'esempio più stupido di ricorsione è il calcolo del fattoriale

    Prima devi individuare il caso base, dove la ricorsione si ferma, e il passo ricorsivo, cioè un passaggio che ti avvicina al caso base.

    Nell'esempio del fattoriale
    passo ricorsivo: n!= n * (n-1)!
    caso base: 0! = 1

    Poi il gioco è fatto e ti scrivi la funzione
    codice:
    Public Function Fattoriale(n as integer) as long
      if n<0 then Fattoriale = -1 'non esiste
    
      if n=0 then Fattoriale=1 'caso base
      
      if n>0 then Fattoriale = n * Fattoriale (n-1) 'ricorsione
    End function
    S'i fosse foco, arderei 'l mondo

  5. #5
    La ricorsione è utile nei casi dove devi visitare una struttura ad albero, per esempio una directory o un insieme di nodi in un controllo TreeView, dove non conosci a priori la profondità della struttura (cioè quanti livelli di cartelle e sottocartelle).
    Chi non cerca trova.

  6. #6
    grazie mille! volevo provare a fare una potenza ma .. non riesco!
    jabjoint

  7. #7
    Ecco un semplice esempio di calcolo della potenza, con esponenti sia positivi che negativi.
    codice:
    Public Function Potenza(base As Double, esp As Integer) As Double
       Select Case esp
          Case 0
             Potenza = 1
          Case Is > 0
             Potenza = Potenza(base, esp - 1) * base
          Case Is < 0
             Potenza = Potenza(base, esp + 1) / base
       End Select
    End Function
    Chi non cerca trova.

  8. #8
    thank you eccezionle!
    jabjoint

  9. #9
    Utente di HTML.it L'avatar di Mabi
    Registrato dal
    May 2002
    Messaggi
    1,245
    Anche il calcolo del determinante di una matrice può essere un altro esempio.

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    5
    nn è eche potresti inserire l'algoritmo in c per il determinante di una matrice?=?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.