Compte bancaire
Exercice · OCaml (option informatique), chapitre 7 — Enregistrements et types mutuellement récursifs
Énoncé
Déclarer compte (mutable solde : int), depose c m, et retire c m qui ne retire que si le solde suffit et renvoie un booléen de succès.
Corrigé
type compte = { mutable solde : int }
let depose c m = c.solde <- c.solde + m
let retire c m =
if m <= c.solde then begin
c.solde <- c.solde - m;
true
end
else false
depose renvoie () ; retire renvoie true après avoir modifié le solde, ou false sans rien changer si le retrait est impossible. Le begin … end groupe la séquence (modification puis valeur true) en une expression.
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.