(* Somme des éléments d'un tableau. *) (* avec une boucle for *) let sum_for a = let s = ref 0 in for i = 0 to Array.length a - 1 do s := !s + a.(i) done; !s (* avec une fonction récursive *) let sum_rec a = let rec loop s i = if i < Array.length a then loop (s + a.(i)) (i + 1) else s in loop 0 0 (* quelques tests *) let () = let test a s = assert (sum_for a = s); assert (sum_rec a = s) in test [||] 0; test [|42|] 42; test [|-1;1|] 0; test (Array.init 10 (fun i -> i)) 45
This document was generated using caml2html