Adloun

Petites fonctions et type inféré

Exercice · OCaml (option informatique), chapitre 1 — Découvrir OCaml : expressions, valeurs et types

Énoncé

Définir une fonction est_positif qui teste si un entier est strictement positif, et une fonction milieu qui renvoie la moyenne de deux flottants. Donner le type inféré de chacune.

Corrigé

let est_positif n = n > 0          (* val est_positif : int -> bool *)
let milieu x y = (x +. y) /. 2.0   (* val milieu : float -> float -> float *)

Pour est_positif, l'usage de > avec 0 (un int) force n : int, et le résultat d'une comparaison est un bool. Pour milieu, les opérateurs flottants forcent les deux arguments à float.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.