Nombre de pièces
Exercice · OCaml (option informatique), chapitre 12 — Algorithmes gloutons
Énoncé
Écrire nb_pieces pieces montant (sans construire la liste).
Corrigé
let rec nb_pieces pieces montant =
match pieces with
| [] -> if montant = 0 then 0 else failwith "rendu impossible"
| p :: reste ->
if p <= montant then 1 + nb_pieces pieces (montant - p)
else nb_pieces reste montant
Même structure que rendu, mais on compte au lieu d'accumuler. nb_pieces [50;20;10;5;2;1] 67 .
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.