OCaml. Exercices sur les listes (1/3)

Exercice 1.
Écrire une fonction « sizelist : ‘a list -> int » qui donne le nombre d’éléments d’une liste (donc qui fait exactement la même chose que la fonction intégrée « list_length »).
Cliquer ici pour voir (ou cacher) le corrigé
Pour voir ce contenu, vous devez : Pour poursuivre votre exploration, vous pouvez : Mathprepa.fr, c'est plus de 2500 exercices et 200 problèmes (tous soigneusement corrigés), un cours complet (maths et info), plus de 400 sujets de concours, etc. dans une présentation fluide et professionnelle adaptée à toutes les tailles d'écran, pour une souscription de 20€ (un an) ou 30€ (deux ans).

Exercice 2.
Écrire une fonction « last : ‘a list -> ‘a » qui donne le dernier élément d’une liste.
Cliquer ici pour voir (ou cacher) le corrigé
Pour voir ce contenu, vous devez : Pour poursuivre votre exploration, vous pouvez : Mathprepa.fr, c'est plus de 2500 exercices et 200 problèmes (tous soigneusement corrigés), un cours complet (maths et info), plus de 400 sujets de concours, etc. dans une présentation fluide et professionnelle adaptée à toutes les tailles d'écran, pour une souscription de 20€ (un an) ou 30€ (deux ans).

Exercice 3.
Écrire une fonction « beforelast : ‘a list -> ‘a » qui donne l’avant-dernier élément d’une liste.
Cliquer ici pour voir (ou cacher) le corrigé
Pour voir ce contenu, vous devez : Pour poursuivre votre exploration, vous pouvez : Mathprepa.fr, c'est plus de 2500 exercices et 200 problèmes (tous soigneusement corrigés), un cours complet (maths et info), plus de 400 sujets de concours, etc. dans une présentation fluide et professionnelle adaptée à toutes les tailles d'écran, pour une souscription de 20€ (un an) ou 30€ (deux ans).

Exercice 4.
Écrire une fonction « nth : int -> ‘a list -> ‘a » renvoyant l’élément d’indice {n} dans une liste (l’élément de tête ayant pour indice {0}).
Cliquer ici pour voir (ou cacher) le corrigé
Pour voir ce contenu, vous devez : Pour poursuivre votre exploration, vous pouvez : Mathprepa.fr, c'est plus de 2500 exercices et 200 problèmes (tous soigneusement corrigés), un cours complet (maths et info), plus de 400 sujets de concours, etc. dans une présentation fluide et professionnelle adaptée à toutes les tailles d'écran, pour une souscription de 20€ (un an) ou 30€ (deux ans).

Exercice 5.
Écrire une fonction « list_make : int -> ‘a -> ‘a list » renvoyant une liste de {n} éléments égaux.
Cliquer ici pour voir (ou cacher) le corrigé
Pour voir ce contenu, vous devez : Pour poursuivre votre exploration, vous pouvez : Mathprepa.fr, c'est plus de 2500 exercices et 200 problèmes (tous soigneusement corrigés), un cours complet (maths et info), plus de 400 sujets de concours, etc. dans une présentation fluide et professionnelle adaptée à toutes les tailles d'écran, pour une souscription de 20€ (un an) ou 30€ (deux ans).

Exercice 6.
Écrire une fonction « rand_in_list : ‘a list -> ‘a » renvoyant un élément pris au hasard dans une liste.
Cliquer ici pour voir (ou cacher) le corrigé
Pour voir ce contenu, vous devez : Pour poursuivre votre exploration, vous pouvez : Mathprepa.fr, c'est plus de 2500 exercices et 200 problèmes (tous soigneusement corrigés), un cours complet (maths et info), plus de 400 sujets de concours, etc. dans une présentation fluide et professionnelle adaptée à toutes les tailles d'écran, pour une souscription de 20€ (un an) ou 30€ (deux ans).

Exercice 7.
Écrire une fonction « nprems : int -> ‘a list -> ‘a list » renvoyant la liste des {n} premiers éléments.
Cliquer ici pour voir (ou cacher) le corrigé
Pour voir ce contenu, vous devez : Pour poursuivre votre exploration, vous pouvez : Mathprepa.fr, c'est plus de 2500 exercices et 200 problèmes (tous soigneusement corrigés), un cours complet (maths et info), plus de 400 sujets de concours, etc. dans une présentation fluide et professionnelle adaptée à toutes les tailles d'écran, pour une souscription de 20€ (un an) ou 30€ (deux ans).

Exercice 8.
Écrire « saufnprems : int -> ‘a list -> ‘a list » renvoyant une liste privée de ses {n} premiers éléments.
Cliquer ici pour voir (ou cacher) le corrigé
Pour voir ce contenu, vous devez : Pour poursuivre votre exploration, vous pouvez : Mathprepa.fr, c'est plus de 2500 exercices et 200 problèmes (tous soigneusement corrigés), un cours complet (maths et info), plus de 400 sujets de concours, etc. dans une présentation fluide et professionnelle adaptée à toutes les tailles d'écran, pour une souscription de 20€ (un an) ou 30€ (deux ans).

Exercice 9.
Écrire une fonction « sublist » renvoyant la sous-liste formée des éléments dont les positions sont comprises (au sens large) entre les valeurs spécifiées. On utilisera pour cela les fonctions « nprems » et « saufnprems » des deux exercices précédents.
Cliquer ici pour voir (ou cacher) le corrigé
Pour voir ce contenu, vous devez : Pour poursuivre votre exploration, vous pouvez : Mathprepa.fr, c'est plus de 2500 exercices et 200 problèmes (tous soigneusement corrigés), un cours complet (maths et info), plus de 400 sujets de concours, etc. dans une présentation fluide et professionnelle adaptée à toutes les tailles d'écran, pour une souscription de 20€ (un an) ou 30€ (deux ans).

Exercice 10.
Écrire une fonction « inlist : ‘a -> ‘a list -> bool » testant si un objet est dans une liste.
Cliquer ici pour voir (ou cacher) le corrigé
Pour voir ce contenu, vous devez : Pour poursuivre votre exploration, vous pouvez : Mathprepa.fr, c'est plus de 2500 exercices et 200 problèmes (tous soigneusement corrigés), un cours complet (maths et info), plus de 400 sujets de concours, etc. dans une présentation fluide et professionnelle adaptée à toutes les tailles d'écran, pour une souscription de 20€ (un an) ou 30€ (deux ans).

Author: Jean-Michel Ferrard

Professeur de mathématiques en classe préparatoire aux grandes écoles.