2.0 KiB
2.0 KiB
Haskell 4
Exercice 1
- La commande crée une liste d'entiers de longueur 4.
- La commande crée une liste de chaine de caractères de longueur 4.
- La commande crée une erreur car une liste ne peut pas être fait d'objets de type différent (ici chaine de caractère et caractère seul).
- La commande crée une liste vide n'ayant encore aucun type (polymorphisme).
- La commande crée une erreur pour les même raisons que 3.
- La commande crée la liste [11,1]. Haskell évalue bien le contenu de la liste pour l'afficher.
Exercice 2
- On ajoute un élément grâce à l'opérateur
:(lu cons). - Les listes en Haskell sont chainées. Donc
consest un constructeur du typeList. - Par exemple
3:[4,5]crée la liste [3,4,5]. - Il faut utiliser l'opérateur
++. - Il prend une liste à gauche et une liste à droite et renvoie ... la concaténation des deux listes.
Prelude> [2,9,4]++[4,7]++[]
[2,9,4,4,7]
- Il faut utiliser l'opérateur
!! - Il prend une liste à gauche et un entier à droite, l'indexation commencant à 0. On execute la commande suivante :
[4,56,76,8,999,78] !! 3
Exercice 3
- Crée une liste de listes d'entiers.
- Assigne à la lettre
lla valeur donnée. - Affiche la valeur associée à la lettre
l - Affiche la liste associée à
laccolée à la liste indiquée.ln'est pas modifiée. - Affiche la liste associée à
là laquelle on a apposée comme premier élément la liste «singleton -99». - Affiche le troisième élément de la liste associée à la lettre
l.
Exercice 4
Ces commandes donnent le résultat escompté en utilisant l'ordre lexicographique sur les listes.
Exercice 5
- Crée la liste des entiers de 1 à 10 inclus.
- Crée la liste arithmétique commencant par 1.0, puis 1.5 et terminant par 3.0.
- Crée la liste arithmétique commençant par 3 puis 6 et ne contenant pas de nombre strictement plus grand que 16.
- Crée la liste arithmétique commençant par 15 puis 14 et ne contenant pas ne nombre strictement inferieur à 4.