Les algorithmes recursifs

Slides:



Advertisements
Présentations similaires
Chapitre annexe. Récursivité
Advertisements

Les fonctions A quoi ça sert ?
L’algorithmique, les séquences.
Algorithmique (suite)
Fonctions & procédures
But de l’exercice 3.1 PREPARER UN ALGORITHME QUI EFFECTUE DEUX TACHES IMPORTANTES : PREMIERE TACHE : Grâce à la fonction aléatoire, un nombre compris entre.
But de lexercice 3.1 PREPARER UN ALGORITHME QUI EFFECTUE DEUX TACHES IMPORTANTES : PREMIERE TACHE : Grâce à la fonction aléatoire, un nombre compris entre.
III- Les fonctions 1- Activité 02
CHAPITRE 2 Nombres entiers, initiation à l’arithmétique- Nombres rationnels.
Calcul mental.
Exercices Algorithmiques
Les sous-programmes Chapitre n° 5: Objectifs : Activité:
Algorithmique et Structures de données
Quelques algorithmes au lycée…
Références Bibliographiques
18/10/2004 P. Van Roy, InfoT4, S5 1 Informatique T4 Solutions au Test du 18 octobre Peter Van Roy Département dIngénierie Informatique, UCL
Récursivité.
Introduction à l’algorithmique
Algorithmique et Programmation
Dérécursivation Dérécursiver, c’est transformer un algorithme récursif en un algorithme équivalent ne contenant pas d’appels récursifs. Récursivité terminale.
Correction du reste des exercices
PGCD : sous ce sigle un peu bizarre se cache un outil bien utile dans les simplifications de fractions, mais aussi dans bien des problèmes de la vie courante…
Les éléments de base de l’algorithmique
TD3 2 IMACS Romaric GUILLERM Algo-Prog en Ada.
Introduction à la récursivité
12- Calcul du PGCD Algorithme des différences
Chapitre 1 PGCD de deux nombres.
ARITHMETIQUE : NOMBRES PREMIERS, PGCD
263 = 15 × = + × ARITHMETIQUE I DIVISEURS ET MULTIPLES
Récursivité Définition récursive d’un problème. Critère d’arrêt et convergence. Performance des algorithmes récursifs. Résolution d’un problème à l’aide.
Abder Alikacem Semaine 3 Bâtir un algorithme
Abder Alikacem Semaine 13 La récursivité
Introduction à l’algorithmique
1 La récursion. Nous avons vu qu'un programme est constitué d'un ensemble de fonctions. Il est possible pour une fonction donnée d'appeler une autre fonction.
Algorithmique et structures de données en C
Structures de données IFT-2000 Abder Alikacem La récursivité Semaine 5 Département dinformatique et de génie logiciel Édition Septembre 2009.
Analyse des Algorithmes
III. Récursivité Principe et exemples
Structures de données IFT-2000 Abder Alikacem La récursivité Département d’informatique et de génie logiciel Édition Septembre 2009.
RAPPEL Qu’est ce qu’une structure de contrôle itérative ?
III. Récursivité Principe et exemples
Arbres binaires et tables de hachage
Introduction au langage C Fonctions et Procédures
Méthodes et outils de conception Introduction à la programmation Paramètre de retour Appel d’une fonction Portée des variables Définition Pourquoi les.
Algorithme Calcul du PGCD Euclide.
Introduction à la récursivité
Vert orange jaune. vert orange jaune A) ARITHMETIQUE Liste des diviseurs de 48: 1;2;3;4;6;8;12;16;24;48.
Introduction au langage C Les entrées-sorties
Introduction au langage C : Structures de contrôle 1 ère année Génie Informatique Dr Daouda Traoré Université de Ségou
MATHÉMATIQUES DISCRÈTES Chapitre 2 (section 2) François Meunier DMI.
Initiation à l’Algorithmique
2005/2006 Structures de Données Introduction à la complexité des algorithmes.
Algorithme des différences
La récursivité Mireille Goud HEG Vd AlgSD - Résurisivité.
CPI/BTS 2 Algorithmique & Programmation La récursivité Algo – Prog CPI/BTS2 – M. Dravet – 14/09/2003 Dernière modification: 14/09/2003.
UE MAREP Cours 8 : La pile d’exécution (Fonctions imbriquées et fonctions récursives) Patricia Renault UPMC 2005/2006.
Module algorithmique et programmation
Introduction à la programmation (420-PK2-SL) cours 13 Gestion des applications Technologie de l’information (LEA.BW)
Codage de l’information
Leçon Nombres entiers et rationnels
Réalisation d’un logiciel de Chiffrement RSA.
Calculer la somme de deux nombres entiers relatifs
La récursivité.
Structures de données IFT-2000 Abder Alikacem La récursivité Semaine 5 Département d’informatique et de génie logiciel Édition Septembre 2009.
Introduction à l’Informatique chap 3 Licence SPI Mme Delmotte.
Chap. 3 Récursion et induction. Les définitions par récurrence consistent à construire des objets finis, à partir d'autres, selon certaines règles. Les.
Les bases de l’Algorithmique
ALGORITHME ET PROGRAMMATION RÉVISION Informatique et Sciences du Numérique.
Cours de Langage C Récursivité. Objectifs de la séance 11 Connaître la récursivité. Mesurer un temps d’exécution. 2.
Introduction Le mathématicien
Transcription de la présentation:

Les algorithmes recursifs 1ère année Génie Informatique Dr Daouda Traoré Université de Ségou email: daoudatr2008@gmail.com

Les algorithmes récursifs Un Algorithme récursif est un algorithme qui fait appel à lui-même dans le corps de sa propre définition. Cas de base : permet de définir la condition d’arrêt de l’algorithme récursif, c’est un cas dans lequel l’algorithme ne s’appelle pas lui-même Exemple : la fonction factorielle Algorithme factorielle (Entrée : un entier n) : un entier Debut si n==0 alors retourner 1 sinon retourner n*factorielle(n-1) finsi Fin

Les algorithmes récursifs Calcule de factorielle (4) 24 factorielle(4) 4*6 4*factorielle(3) 4*3*2 Montée Descente 4*3*factorielle(2) 4*3*2*1 4*3*2*factorielle(1) 4*3*2*1*1 4*3*2*1*factorielle(0) 4*3*2*1*1

Algorithme du calcul de puissance { calcul de x a la puissance n } Algorithme puissance(Entrée: x et n des entiers): entier Debut si (n=0) alors retourner 1 sinon retourner x*puissance(x, n-1) finsi Fin

Algorithme du calcul de la somme { calcul de la somme des entiers entre 1 et n } Algorithme somme(Entrée: n): entier Debut si (n=1) alors retourner 1 sinon retourner somme(n-1)+n; finsi Fin

Algorithme du plus grand commun diviseur {PGCD (plus grand commun diviseur)} Algorithme PGCD (Entrée: a et b des entiers) : un entier Debut si (a=b) alors retourner a sinon si (a < b) alors retourner PGCD (a, b-a) sinon retourner PGCD(a-b, b) Finsi Fin

Avantages et Inconvénients Simple à écrire Nombre d’appels récursifs souvent facile à calculer Temps d’exécution souvent facile à estimer Inconvénients Consomme de la mémoire Couteux en temps de calcul