• Aucun résultat trouvé

DM 1

N/A
N/A
Protected

Academic year: 2022

Partager "DM 1"

Copied!
1
0
0

Texte intégral

(1)

DM 1

Option informatique, première année

Julien Reichert

Toutes les fonctions de ce DM sont à écrire en Caml. Le devoir est à rendre sous forme de chier .ml contenant les programmes avec au choix des commentaires ou un chier annexe contenant des explications. Tous les chiers à rendre peuvent aussi être manuscrits (option à éviter, cependant).

Exercice 1 : Écrire une fonction de signature recherche : 'a -> 'a vect -> bool telle que recherche elt tab retourne true si elt est dans le tableau tab et false sinon.

Exercice 2 : Écrire une fonction de signature somme : int list -> int retournant la somme des éléments de la liste en argument.

Pour l'exercice précédent, en attendant d'avoir abordé la récursivité, on se permettra exceptionnellement de faire un programme itératif sur la structure de liste. An de donner un aperçu de la façon de parcourir une liste de manière itérative, voici le code de la fonction de recherche dans une liste :

let recherche_liste elt l = let ll = ref l in

trywhile !ll <> [] do

if hd !ll = elt then failwith "Trouve";

ll := tl !ll done; false

with Failure "Trouve" -> true;;

Exercice 3 : Écrire une fonction de signature make_list : int -> int list telle que make_list n retourne une liste contenant n fois l'entier 0. Il existe deux possibilités principales, il est recommandable de trouver les deux.

Exercice 4 : Écrire une fonction de signature range : (int*int*int) -> int vect telle que range (deb,fin,pas) retourne un tableau correspondant à l'objet range(deb,fin,pas) en Python, c'est-à-dire un tableau contenant deb, deb+pas, deb+2*pas, ..., deb+k*pas tel que deb+k*pas < fin <= deb+(k+1)*pas. Écrire aussi range_float agissant sur des ottants.

Exercice 5 : Écrire l'algorithme d'Euclide sous la forme d'une fonction pgcd : int -> int -> int.

1

Références

Documents relatifs

[r]

Dénir int* tabFitness dans le main, qui recupère les valeurs calculées dans

Un nombre entier naturel non nul n est dit parfait si la somme des diviseurs de n qui sont supérieurs ou égaux à 1 est égale au double de n. Par exemple, 6 est un

Soit f une fonction continue et positive d´ efinie sur l’intervalle [a; b] et x un nombre r´ eel quelconque de

Société spécialisée dans la vente par correspondance de biscuits et chocolats, HORIZON 2000 sou- haitait optimiser la gestion de son stock et de ses préparations de commandes dans

Lebois par ses qualités d'aspect et par la diversité de ses mises en œuvre est en mesure d'établir cette transition entre bâti ancien et édifice nouveau en raison de son

[r]

[r]