Accueil > > > TROIS ALGORITHMES POUR LA SUITE DE FIBONACCI
TROIS ALGORITHMES POUR LA SUITE DE FIBONACCI
Information sur la source
Description
Bonjour à tous ! Il existe au moins trois manières de programmer le calcul des termes de la suite de Fibonacci. La première, très coûteuse en temps, consiste à traduire la définition mathématique de la suite (qui est une relation de récurrence telle que : F(0) = F(1) = 1 et F(n) = F(n - 1) + F(n - 2)) sous forme d'algorithme. Une autre version, plus judicieuse, consiste à calculer une seule fois les petites valeurs (alors que la somme F(n - 1) et F(n - 2) oblige à les calculer deux fois) grâce à une fonction auxiliaire. Une troisième méthode, mathématiquement plus riche, exploite une relation matricielle (vous la trouverez dans le zip plus ou moins mal représentée, ou dans d'autres pages où LaTeX permet de faire des merveilles ;-)) Le but de cette source est avant tout de montrer que la notion de complexité compte beaucoup dans les algorithmes, et que son calcul constitue un excellent indicateur de l'efficacité des algorithmes. J'ai aussi inclu l'API QueryPerformanceCounter pour vous permettre de réaliser des mesures plus "concrètes" du temps d'exécution (mais, pour le coup, il faut réitérer plusieurs fois la manoeuvre avant d'obtenir une moyenne exploitable). Je n'ai rien prévu concernant les grands entiers car mon but n'était pas de réaliser un programme capable de calculer effectivement le cinq millième terme de la suite de Fibonacci. De plus, il existe déjà d'excellentes sources sur le sujet (travailler avec de grands entiers) sur VBFrance. Bis repetita placent jusqu'à un certain point quand même... La catégorie est 2 "Initié" en raison du recours aux matrices, de la récursivité et de l'API. Bon, rien de bien méchant malgré tout. Disons que c'est un niveau 1 légèrement plus proche de 2 que de 1 :D Voilà, tout est dit. J'espère que ça vous plaira. Bonne lecture !
Historique
- 11 juillet 2006 07:51:38 :
- La mise à jour de la source concerne un changement de définition des conditions initiales de la suite de Fibonacci. Au lieu de :
F(0) = F(1) = 1 et F(n) = F(n - 1) + F(n - 2)
j'utilise désormais :
F(0) = 0, F(1) = 1 et F(n) = F(n - 1) + F(n - 2)
Voilà tout !
- 11 juillet 2006 12:38:02 :
- Petit oubli lié à la modification précédente, concernant le troisième algorithme
- 24 juillet 2006 12:58:06 :
- Cette mise à jour fait suite à la discussion au sujet de cette source, que vous trouverez plus bas sur cette page (en particulier aux interventions de Patrice99). Elle a conduit à la traduction d'un algorithme C++ en Visual Basic pour proposer une version améliorée de l'algorithme 1 "naïf", par sauvegarde des résultats préalablement calculés. Merci donc à Patrice99 pour ses interventions.
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Win 3.11 suite... [ par Pierre ]
Rebonjour,Suite à une réponse obtenue sur le forum concernant la programmation en VB pour win 3.11, VB6 ne fabriquant que du 32bit, quelle version de
gestion ID à la suite SHELL (VB5) [ par jj ]
Après l'execution d'un prog .EXE DOS à partir de la commande SHELL, il nous ait retourné un ID de type variant correspondant au numéro de la tache sys
suite a l'astuce Programme autonome [ par Cameleon ]
BonjourQuelqu'un a t il essayer cette astuce et surtout y est il parvenu?J'ai bien essayer en suivant les instructions fournis dans l'astuce mais rien
vb excel help [ par banditito ]
salut, je débute avec vbpb: dans une feuille d'excel, je crée des formes automatiques que je nomme par la suite : Par, Découpe etc...j'aimerais dans u
Écrire un bout de mot et la suite s'affiche seule. [ par Mayo ]
Dans Internet Explorer 4,quand on tappe le début d'un site internet qu'on a deja visité, la suite s'affiche seule...Comment faire ça en VB6 ?MERCI
Suite de logiciels pour le jeux de table "Advanced Dungeons & Dragons" [ par Amonbofis ]
Bonjour,Cette modeste suite (pas finie ), vise comme plusieurs autres logiciels à "raccourcir" le temps nécessaire à la création d'un personnage pour
Traiter à la suite tous les fichiers textes d'un répertoire [ par Tignard ]
Salut à toutes et à tous,Voici mon problème. Je dois traiter ligne par ligne un fichier texte type afin de récupérer des valeurs numériques et les env
.: NEWSLETTER HTML (suite!!) (pour NIX!!!!!! et les autres aussi!!) :: [ par vbtom ]
Slt Nix et les autres, Je rentre de vacances donc je vais pouvoir te faire tes maquettes de Newsletter HTLM mais je vais te demander un petit serv
Niveau 1, 2, 3 : c'est quoi au juste ? [ par Patrice99 ]
Salut,pour les contributions, il faut indiquer un niveau (1, 2, 3) : c'est le niveau de quoi au juste ? de la complexité du code source (1 facile ou b
Pb "erreur d'execution 429 : Le composant ActiveX ne peut créer l'objet" suite installation pack office 2000 [ par michael.rodet ]
Depuis quelques temps, pb en entrant dans le gestionnaire de données et en ouvrant une base dans mes programmes VB.Après recherche, il s'avère qu'il s
|
Derniers Blogs
PRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGEPRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGE par richardc
http://www.c2idotnet.com/articles/presentation-des-api-rest-de-windows-azure-lister-les-comptes-de-storage
Désolé pour "toto", mais c2i existait avant blogs.developpeur.org et c'est mon site "officiel" ;-) ...
Cliquez pour lire la suite de l'article par richardc [HTML5] SLIDES ET DéMOS : AUTOUR DU W3C , NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] SLIDES ET DéMOS : AUTOUR DU W3C , NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Très bonne après-midi passée lors cette conférence avec le W3C, organisée par L' Inria sur les nouveaux standards, ce Mardi 14 Février, on sent vraiment que çà bosse au W3C, et l'avenir est très très prometteur pour le HTML5, notamment ...
Cliquez pour lire la suite de l'article par Gio GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|