• Aucun résultat trouvé

IFT 1015 - R´ecursion

N/A
N/A
Protected

Academic year: 2022

Partager "IFT 1015 - R´ecursion"

Copied!
6
0
0

Texte intégral

(1)

IFT 1015 - R ´ecursion

Professeur:

Stefan Monnier

B. K ´egl, S. Roy, F. Duranleau, S. Monnier

D ´epartement d’informatique et de recherche op ´erationnelle Universit ´e de Montr ´eal

hiver 2006

(2)

Au programme

[Ni ˜no: 17]

R ´ecursion

(3)

Une fonction qui s’appelle elle-m ˆeme

Le code d’une fonction peut- ˆetre arbitraire

en particulier, une fonction peut s’appelle elle-m ˆeme.

public static void fonction (int a) {

return a * fonction(a - 1);

}

Que se passe-t-il si on fait l’appel suivant?

fonction(4)

(4)

Une fonction qui s’appelle elle-m ˆeme

Le code d’une fonction peut- ˆetre arbitraire

en particulier, une fonction peut s’appelle elle-m ˆeme.

public static void fonction (int a) {

return a * fonction(a - 1);

}

Que se passe-t-il si on fait l’appel suivant?

fonction(4)

(5)

Rem `ede

Similairement aux boucles, il faut ajouter une condition d’arr ˆet pour

´eviter les appels r ´ecursifs infinis.

Ces conditions d’arr ˆet sont reli ´ees au cas de base du probl `eme `a r ´esoudre par r ´ecurrence.

Ex.:

Factoriel:

f

0

= 1

,

f

1

= 1

et

f

n

= n · f

n−1

Fibonacci:

f

0

= 0

,

f

1

= 1

et

f

n

= f

n−1

+ f

n−2

(6)

Trace d’ex ´ecution

Que se passe-t-il lors d’un appel d’une fonction?

La machine garde en m ´emoire une adresse de retour, i.e. o `u poursuivre l’ex ´ecution du programme au retour d’une fonction.

Un espace m ´emoire est r ´eserv ´e pour les param `etres de la fonction, et ses variables locales.

Toute cette m ´emoire s’appelle la pile d’ex ´ecution.

Références

Documents relatifs

deviendra professeur l’ann´ee suivante (exception : lors de leur premi`ere ann´ee d’enseignement, les professeurs sont trop occup´es pour former un ´etudiant).. I Ann´ee 0 : il

Le calcul de la plus faible pr´ econdition associ´ e ` a cette logique de Hoare modifi´ ee permet de d´ e- terminer les contraintes minimales sur les param` etres dy- namiques d’un

Lorsque l’on souhaite transmettre plus d’un fichier, l’utilisation d’une archive tar compress´ ee permet de transmettre une seule pi` ece seulement dont la taille est r´

pour L n,p tel que deux éléments suessifs dièrent d'une et une seule position. L ′ n,p ) est l'ensemble des mots de Fibonai (resp. Luas) ayant.. un nombre impair

— Les 640 KiO compris entre 00000h et 9FFFFh sont r´eserv´es pour la m´ emoire vive propre- ment dite, situ´ee sur des circuits int´egr´es de m´emoire RAM ; toutes les

En cas d’´echec l’indicateur de retenue CF est positionn´e ` a 1, un code d’erreur est envoy´e dans le registre AX (07h pour bloc de m´emoire d´etruit, 08h pour

L’induction permet de prouver qu’un ´ enonc´ e est vrai pour tout n.. La r´ ecursion permet de d´ efinir une suite (pour

c) D´ efinir par r´ ecursion la transformation s qui re¸coit un tel arbre et y ´ echange partout les sous-arbres droit et gauche. D´ emontrer que s 2 est l’identit´ e.. d) D´