Pblm syntaxe bidon

Le
Zeg
Salut,
C'est probablement evident mais peut être tellement que je ne trouve pas.
Le compilo me dit erreur de syntaxe sur l'appel recursif,
on peut pas faire de procedure recursive???

Public Sub InsertDicho(Sup As Integer, ByRef tableau() As Variant, Elément
As Variant, Place As Integer)

Do While (Sup < Place)
tableau(Sup + 1) = tableau(Sup)
Rem Appel récursif
InsertDicho(Sup - 1, tableau(), Elément, Place)
Loop
tableau(Place) = Elément

End Sub

Merci d'avance ;)
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
ng
Le #14713191
Salut,

on peut pas faire de procedure recursive???


Bien sûr que si ;) !

En VB l'appel de procédure avec arguments se fait ainsi :

MaProc "Arg1", "Arg2"

'// ou

Call MaProc("Arg1", "Arg2")

Si tu choisis de mettre des parenthèses, n'oublie pas le Call !

InsertDicho(Sup - 1, tableau(), Elément, Place)


devient alors
Call InsertDicho(Sup - 1, tableau, Elément, Place)
(le passage d'un tbl en paramètre ne nécessite pas de (), de plus je te
conseille d'éviter les variables à accents.)


--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
http://apisvb.europe.webmatrixhosting.net/

Zeg
Salut,
C'est probablement evident mais peut être tellement que je ne trouve
pas. Le compilo me dit erreur de syntaxe sur l'appel recursif,
on peut pas faire de procedure recursive???

Public Sub InsertDicho(Sup As Integer, ByRef tableau() As Variant,
Elément As Variant, Place As Integer)

Do While (Sup < Place)
tableau(Sup + 1) = tableau(Sup)
Rem Appel récursif
InsertDicho(Sup - 1, tableau(), Elément, Place)
Loop
tableau(Place) = Elément

End Sub

Merci d'avance ;)


Zeg
Le #14713171
Merci , u save my time :)

"ng" #
Salut,

> on peut pas faire de procedure recursive???
Bien sûr que si ;) !

En VB l'appel de procédure avec arguments se fait ainsi :

MaProc "Arg1", "Arg2"

'// ou

Call MaProc("Arg1", "Arg2")

Si tu choisis de mettre des parenthèses, n'oublie pas le Call !

>InsertDicho(Sup - 1, tableau(), Elément, Place)
devient alors
Call InsertDicho(Sup - 1, tableau, Elément, Place)
(le passage d'un tbl en paramètre ne nécessite pas de (), de plus je te
conseille d'éviter les variables à accents.)


--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
http://apisvb.europe.webmatrixhosting.net/

Zeg
> Salut,
> C'est probablement evident mais peut être tellement que je ne trouve
> pas. Le compilo me dit erreur de syntaxe sur l'appel recursif,
> on peut pas faire de procedure recursive???
>
> Public Sub InsertDicho(Sup As Integer, ByRef tableau() As Variant,
> Elément As Variant, Place As Integer)
>
> Do While (Sup < Place)
> tableau(Sup + 1) = tableau(Sup)
> Rem Appel récursif
> InsertDicho(Sup - 1, tableau(), Elément, Place)
> Loop
> tableau(Place) = Elément
>
> End Sub
>
> Merci d'avance ;)




Publicité
Poster une réponse
Anonyme