TP 4 CaML Light
EXERCICES GENERAUX
Exercice 1
Ecrire une fonction calculant le produit de deux nombres suivant la méthode de la multiplication dite
égyptienne :
0 si x=0
Mult_egypt (x,y) = Mult_egypt(x/2, 2*y) si x est pair
y + Mult_egypt(x-1, y) sinon
Exercice 2
Ecrire une fonction calculant le ppcm (plus petit commun multiple). On pourra s'aider du pgcd (plus grand
commun diviseur).
Exercice 3 :
1. Ecrire une fonction inv qui inverse un mot. Exemple "CAML" sera transformé en "LMAC"
2. Ecrire une fonction palind qui reconnaît les palindromes, comme "RADAR" ou "eluparcettecrapule "
Exercice 4 : Bissextile
Ecrire et tester la fonction de détermination des années bissextiles utilisant la définition suivante :
« Toutes les années divisibles par 4 sont bissextiles sauf celles qui sont divisibles par 100 et qui ne sont pas
divisibles par 400. »
Exercice 5 :
1- Ecrire la fonction prod qui fait le produit de x par y, sans utliser l’opérateur *.
2- Ecrire la fonction puiss qui calcule la puissance xy en utilisant la fonction prod.
Exercice 6:
1- Ecrire une fonction récursive rest qui calcule le reste de la division entière de x par y.
2- Ecrire une fonction récursive quot qui calcule le quotient de la division entière de x par y.
Remarque : On ne pourra pas utiliser les opérations / et mod