Fibonacci en VBA (3méthodes)

Résolu
VBA_Newb Messages postés 4 Statut Membre -  
VBA_Newb Messages postés 4 Statut Membre -
Bonjour,
En mathématique, la suite de Fibonacci est définie comme suit :
Fibonacci(n) = 1 si n = 1 ou 2
= Fibonacci(n-1) + Fibonacci(n-2) si n>=3
Il existe un algorithme itératif pour fibonacci(n) comme suit :

initialiser la valeur de fibo à 0
initialiser i à 1

on répète n fois les 2 instructions suivantes :

fibo = fibo + i
i = fibo - i;

après n itérations, le résultat de fibonacci(n) est dans fibo.

Écrivez 3 fonctions, recevant la valeur de n pour calculer fibonacci de n:

1) en utilisant la boucle for…next
2) en utilisant la boucle while …
3) en utilisant la boucle do … Loop while …

j'aimerais écrire ces trois fonctions en suivant les instructions mentionnés plus haut. Si quelqu'un pourrait répondre à au moins une de ces trois là, ce serait très apprécier

merci
Configuration: Windows XP
Internet Explorer 7.0

2 réponses

  1. wilfried_42 Messages postés 912 Statut Contributeur 245
     
    Bonjour

    En fonction de ce que j'ai compris

    Function fibo_fn (n as long) as long
        dim fibo as long
        dim i as long
        dim j as long
        fibo = 0 : i = 1
        for j = 1 to n
             fibo = fibo + i
             i = fibo - i
        next i
        fibo_fn = fibo
    end function 
    
    Function fibo_while (n as long) as long
        dim fibo as long
        dim i as long
        dim j as long
        fibo = 0 : i = 1 : j = 0
        While j< n
             fibo = fibo + i
             i = fibo - i
             j = j + 1
        wend
        fibo_While = fibo
    end function 
    
    Function fibo_do (n as long) as long
        dim fibo as long
        dim i as long
        dim j as long
        fibo = 0 : i = 1 : j = 0
        Do
             fibo = fibo + i
             i = fibo - i
             j = j + 1
        loop while j<n
        fibo_do = fibo
    end function 
    9