LISP -- Maîtrise d'Informatique

Examen 1996-1997

I

Soit la fonction fonc définie par :

 
(de fonc (e l)
    (if (null l)    
        nil   
       (if  (equal e (car l))   
       t
       (fonc e (cdr l)) 
       )   
    )   
)
1
Réécrire la définition de fonc en utilisant cond au lieu de deux if imbriqués;
2
Quel est le résultat de l'exécution:

(fonc 'd '((a c) d)) et
(fonc 'c '((a c) d));

3
Donner, en français, la définition de fonc;

4
Existe-t-il une fonction prédéfinie équivalente à fonc ?

II

1
Écrire la définition d'une fonction diviseur qui prend deux entiers n et m en argument et retourne vrai si n est un diviseur de m et faux sinon;

2
Écrire la définition d'une fonction premier qui prend un entier n en argument et retourne vrai s'il est premier et faux autrement;

3
Écrire la définition d'une fonction qui affiche la liste de tous les entiers plus petit qu'un entier donné.


Vincent Vajnovszki
sam 11 avr 13:22:52 DST 1998