Triangle de pascal

Contenu du snippet

(* Affichage du triangle de Pascal sur la sortie standard. *)
let afficher triangle =
      let rec loop max ligne = function
            | i when i = max -> Printf.printf "%i\n" ligne.(i)
            | i -> Printf.printf "%i " ligne.(i) ;
                  loop max ligne (i + 1)
      in Array.iter (fun ligne -> loop (Array.length ligne - 1) ligne 0) triangle
(* Calcul des termes du triangle de Pascal. Exemple d'utilisation : afficher (triangle 10) *)
let pascal n =
      let triangle = Array.init n (fun i -> Array.make (i + 1) 1) in
      for i = 2 to n - 1 do
            for j = 1 to Array.length triangle.(i) - 2 do
                  triangle.(i).(j) <- triangle.(i - 1).(j - 1) + triangle.(i - 1).(j)
            done
      done ;
      triangle

Compatibilité : ObjectiveCaml

Disponible dans d'autres langages :

A voir également