ioCode
Les motifs exotiques
Listes • Exercices 1A
- Écrire une fonction1IndiceParcourir la liste de manière récursive jusqu'à isoler les deux derniers éléments puis les retourner dans un tuple.
deux_derniers : 'a list -> 'a * 'aqui renvoie les deux derniers éléments de la liste sous forme de tuple. Par exempledeux_derniers [1; 2; 3]renvoie(2, 3). - Écrire une fonction2IndiceAssocier les deux premiers éléments en une paire puis réappliquer la fonction sur le reste de la liste.
grouper_par_deux : 'a list -> ('a * 'a) listqui calcule une liste de paires à partir d'une liste plate. Par exemplegrouper_par_deux [1; 2; 3; 4]renvoie[(1, 2); (3, 4)]. - Écrire une fonction3IndiceComparer chaque élément avec son successeur immédiat et vérifier la condition de croissance sur la suite restante.
est_croissante : int list -> boolqui renvoietruesi la liste d'entiers est strictement croissante. Par exempleest_croissante [1; 3; 5]renvoietrue. - Écrire une fonction4IndiceTester l'égalité des trois premiers éléments et filtrer ce triplet si la condition est satisfaite sinon conserver le premier.
compresser_triplets : 'a list -> 'a listqui calcule une liste où les triplets d'éléments identiques sont remplacés par un seul élément. Par exemplecompresser_triplets [1; 1; 1; 2; 3]renvoie[1; 2; 3]. - Écrire une fonction5IndiceVérifier si l'élément central est strictement supérieur à ses voisins et accumuler les résultats sur la queue restante.
extraire_pics : int list -> int listqui renvoie la liste des pics locaux d'une liste d'entiers. Par exempleextraire_pics [1; 3; 2; 5; 4]renvoie[3; 5].
Langage
Console initialisée. En attente de l'interpréteur...