Somme itérative et somme récursive

usher119 Messages postés 1 Date d'inscription mercredi 24 août 2011 Statut Membre Dernière intervention 24 août 2011 - 24 août 2011 à 20:58
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 - 24 août 2011 à 21:42
Bonjour.
Voilà mon problème. J'aimerais créer une petite application capable de calculer la somme des entiers d’un intervalle [a,b]. Pour corser un peu les choses, j'aimerais créer une fonction qui fasse une somme itérative et somme récursive.
Voilà ce que j'ai mais pour mes deux fonctions :

- Fonction SommeIterative:
Function SommeIterative(ByVal A As Integer, ByVal B As Integer) As Long
Dim I As Integer
SommeIterative = 0
For I = A To B
SommeIterative = SommeIterative + I
Next

End Function


- Fonction SommeRecursive: (/5)

Function SommeRecursive(ByVal A As Integer, ByVal B As Integer) As Long
If B = 0 Then
SommeRecursive = 0
Else
SommeRecursive = B + SommeRecursive(B - A)
End If

End Function

Malheureusement mon programme ne tourne pas. Est-il possible d'y regarder ?

Merci d'avance !

1 réponse

cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
24 août 2011 à 21:42
Salut

Private Function SommeRecursive(ByVal A As Integer, ByVal B As Integer) As Long

'la valeur de a de ton intervalle n'est pas toujours 1 donc la  condition d'arret de la récursion est  
   If B = A Then
      SommeRecursive = A
   Else
     SommeRecursive = B + SommeRecursive(A, B - 1)
   End If

    End Function
0
Rejoignez-nous