bonjour ,
je crois que j'ai compris l'erreur , en fait j'ai changé le nom de ma fonction en sub et ça a marché mais je ne sais pas si c'est correcte :
Function sommeDesCarresRec(ByVal n As Long) As Long
If n > 1 Then
sommeDesCarresRec = n ^ 2 + sommeDesCarresRec(n - 1)
Else
sommeDesCarresRec = n
End If
End Function
Sub sommeDesCarresRe()
MsgBox sommeDesCarresRec(5)
End Sub
Function sommeDesCarres(ByVal n As Long) As Long
Dim i As Long
For i = 1 To n
sommeDesCarres = sommeDesCarres + n ^ 2
Next i
End Function
Sub sommeDesCarre()
MsgBox sommeDesCarres(5)
End Sub
la premiere étant recursive et la seconde itérative .
Par contre , est ce qu'il existe une maniere de comparer les deux valeurs que les fonctions renvoient dans les deux versions (j'ai eu 55 pour la première et 125 pour la deuxieme ) ?
C'est normal si la deuxieme me renvoie 125, comme c'est les mêmes fonctions à priori ?
Julien
Message édité par julien1324 le 24-02-2008 à 15:45:59