• Aucun résultat trouvé

!  2HCH==JE B?JEAA  6, 4 LEIEI

N/A
N/A
Protected

Academic year: 2022

Partager "!  2HCH==JE B?JEAA  6, 4 LEIEI"

Copied!
1
0
0

Texte intégral

(1)

L3 - Programmation fonctionnelle - TD2 1 Révisions

Exercice 1 (20 mn) Compétence M.3 : listes

Réalisez une fonction caml qui accepte en paramètre un entiernet retourne une liste contenant les npremiers termes de la suite de Fibonacci classés par ordre de valeurs décroissantes.

2 Nouvelles compétences

Exercice 2 (20mn)

Compétence M.4 : fonctions d'ordre supérieur

Réalisez une fonction caml qui accepte en paramètre une listeqet une fonctionf, et qui retourne la liste des valeurs obtenues en appliquant la fonctionf à chacune des valeurs deq.

Exercice 3 (30mn)

Compétence M.5 : enregistrements

1. Donnez la déclaration d'un type point qui comporte deux attributs de types oat nommés x ety, représentant les coordonnées cartésiennes d'un point dans un espace Euclidien.

2. Réalisez une fonction qui accepte en paramètres deux points et retourne la distance Eucli- dienne entre ces points.

3. Réalisez une fonction qui accepte en paramètres un pointpet une liste de points q, et qui retrourne la moyenne des distances entrepet les points de q.

Exercice 4 (40 mn)

Compétence M.6 : variantes

1. Donnez la déclaration d'un type bintree (comme arbre binaire), en considérant qu'un arbre binaire est soit une feuille L, soit un noeud N possdant un attribut de type bool, ainsi qu'un ls gauche et un ls droit de type bintree.

2. Donnez un exemple d'arbre déni de cette manière, ainsi que sa représentation graphique.

3. Réalisez une fonction acceptant un arbre binaire en paramètre et retournant le nombre de feuilles de cet arbre.

4. Réalisez une fonction acceptant un arbre binaire en paramètre et retournant la profondeur de cet arbre, c'est à dire la longeur (nombre de noeuds) du plus long chemin entre la racine et une feuille.

5. Réalisez une fonction acceptant un arbre binaire en paramètre et retourant le nombre de noeuds de cet arbre ayant la valeur true.

1

Références

Documents relatifs

// renvoie un arbre de racine e ayant l et r pour fils gauche et droit Element root(BTree bt); // renvoie l’´ el´ ement ` a la racine de l’arbre BTree leftChild(BTree bt); // renvoie

L’opération estVide teste si la file avec priorité est vide ou pas, l’opération ajouter insère dans la file un nouvel élément avec sa priorité, l’opération premier

Écrivez maintenant la méthode de tri fusion, qui divise la liste en deux listes de taille égale, trie les sous-listes récursivement puis les fusionnent avec la méthode

Chercher sur Internet l‘algorithme DSW (c’est un algorithme qui prend en entrée un arbre de recherche binaire afin de réaliser son équilibrage) et l’algorithme de

Les pre- mières division d’un arbre sont utilisées pour construire une variable synthétique intégrée à une régression logistique afin de sélectionner les quelques

Dans un arbre binaire tout noeud a au plus deux fils Un arbre binaire possède exactement deux sous-arbres (éventuellement vides). Définition récursive (et constructive) Un arbre

Le probl` eme de cet exercice consiste ` a d´ eterminer le nombre de points du plan contenus dans un rectangle donn´ e.. Ce genre de situation apparait tr` es souvent dans les

d- En supposant qu’il existe une fonction point/2 qui permette de dessiner un point de coordonn´ ees (x, y), d´ efinir une fonction qui dessine la repr´ esentation graphique