31.07.2015 Views

Juin 2005

Juin 2005

Juin 2005

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Université Henri Poincaré, Faculté des SciencesDEG20221 - DEUG SMl - Session de juin/juillet <strong>2005</strong>Epreuve d'Informatique - jeudi 30 juin <strong>2005</strong>: 13h30-15h30 - Durée: 2hRédacteur: E.A. CichonDocuments et calculatrices non autorisésLes exercices sont indépendants.Exercice 1Pour les questions suivantes, donner la valeur qu'afficherait Ocaml lors de l'évaluation de la dernièreexpression. Justifier brièvement vos réponses.1. let a = 2 "let b 5(if a < b then a * belse a + b) + a / b2. Cfunction x -> x*4) «function y -> y+7) 4)3. let rec f = function (x,y) ->match (x j y) with(0, y) -> y1 (x, 0) -> x1 (x, y) -> f (x-i, y-rl.) + 2in f (5, 3)4. let ree f = function l ->match l with[J -> [J1 t::q -> (tir L) (f q)Exercice 2Indiquer si les expressions ou définitions suivantes sont typables. Si c'est le cas donner leur type et danstous les cas justifier voire réponse.1. (2.5 *. 3.5) +. 10."2. function x -> x or (2+3)3. function x -> function y -> x or y 14· iunction x -> function y -> x y "Exercice 3Soit la fonction mystere suivante:let ree mystere = function l ->match l with[] -> [J1 x :: 11 -> if x mod 2 = 0 then mystere 11else x :: mystere Il j j1. Simuler l'exécution de la fonction mystere sur les appels suivants et donner les résultats de cesappels:(a) let rl mystere [5 ; 4; 3; 8; 1](b) let r2 mystere [6; 4; 2· , g. , 7J(c) let r3 mystere [1; 2; 3; 4' , 5J2. Que fait la fonction mystere ?"""TSVP =?1

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!