Programmation fonctionnelle
Langage Caml
Licence 1ère année année 2016 - 2017
Annales
Pr. Nicole VINCENT
Licence 1 Année 2016 - 2017
UE Informatique
Programmation fonctionnelle
2
Table des matières
annales 2010-2011 ................................................................................... 3
CC1 ................................................................................................. 4
CC2 ................................................................................................. 6
CC4 ................................................................................................. 7
Session 2 .......................................................................................... 9
annales 2011-2012 ................................................................................... 10
CC1 ................................................................................................. 11
CC2 ................................................................................................. 13
CC4 ................................................................................................. 15
Session 2 .......................................................................................... 16
annales 2012-2013 ................................................................................... 17
CC1 ................................................................................................. 18
CC2 ................................................................................................. 19
CC4 ................................................................................................. 21
Examen de rattrapage ................................................................... 23
annales 2013-2014 ................................................................................... 24
CC1 ................................................................................................. 25
CC2 ................................................................................................. 27
CC4 ................................................................................................. 28
Examen de rattrapage ................................................................... 30
annales 2014-2015 ................................................................................... 32
CC1 ................................................................................................. 33
CC2 ................................................................................................. 35
CC4 ................................................................................................. 37
Examen de rattrapage ................................................................... 39
annales 2015-2016 ................................................................................... 41
CC1 ................................................................................................. 42
CC2 ................................................................................................. 44
CC4 ................................................................................................. 46
Examen de rattrapage ................................................................... 48
Licence 1 Année 2016 - 2017
UE Informatique
Programmation fonctionnelle
3
ANNALES
2010 - 2011
Licence 1 Année 2016 - 2017
UE Informatique
Programmation fonctionnelle
4
CC 1 (2010-2011)
Exercice 1
Expliquer l'interprétation faite pour les expressions suivantes :
a/ # let f x y = ( x+y , x > y ) ;;
val f : int -> int -> int * bool = <fun>
b/ # let tr x = match x mod 3 with | 0 -> x
| 1 -> x-1
| 2 -> x+1 ;;
Warning 8: this pattern-matching is not exhaustive.
Here is an example of a value that is not matched:
3
val tr : int -> int = <fun>
c/ Calculer f 3 2 et tr 79
indiquer si les expressions suivantes sont syntaxiquement exactes ou non. On justifiera les
réponses.
d/ # let g x y = x+y x>y ;;
e/ # let h y = [x+y ; x > y] ;;
f/ # let fr x = if x > 50 then x - 3 else fr (x-3) ;;
Exercice 2
Ecrire une fonction booléenne qui permet de vérifier qu'un point connu par un couple de
coordonnées dans un repère (O;i,j), appartient à une droite d'équation ax+by+c=0. La droite
est connue par les trois valeurs a b et c.
On précisera le nombre d'arguments de la fonction.
On écrira l'appel à la fonction pour le point de coordonnées (0,5 ; 2) et la droite d'équation
x+y=0
Exercice 3
1°/ Ecrire une fonction maxi, avec deux arguments x et y, qui indique la variable la plus
grande.
2°/ Ecrire une fonction deliste qui à partir de deux listes, rend une liste dont les termes sont
les valeurs maximum des termes de même rang des deux listes. Les listes sont alignées par la
gauche.
3°/ Ecrire une fonction troiliste qui à partir de trois listes, rend une liste dont les termes sont
les valeurs maximum des termes de même rang dans les trois listes.
Exercice 4
Ecrire la fonction qui permet de calculer la somme des éléments d'une liste d'entiers, quand
les entiers sont pairs.
Licence 1 Année 2016 - 2017
UE Informatique
Programmation fonctionnelle
5
Exercice 5
Ecrire la fonction récursive qui permet, pour un entier n positif ou nul, de calculer en fonction
de n, les termes un d'une suite définie par une relation de récurrence :
Les valeurs des deux premiers termes u0 et u1 seront des paramètres de la fonction.
On veillera à ce que la fonction ne provoque pas un stack overflow pour une valeur négative
de n.
1 / 48 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !