(* On a choisi ici une taille de fenêtre arbitraire, à savoir 800x800.
   Attention à ne pas oublier de multiplier x et y, qui sont tirés
   dans l'intervale [0,1[, par 800. *)

open Graphics

let () =
  open_graph " 800x800";
  draw_circle 0 0 800

let n = read_int ()

let () =
  let p = ref 0 in
  for k = 1 to n do
    let x = Random.float 1. in
    let y = Random.float 1. in
    fill_circle (truncate (800. *. x)) (truncate (800. *. y)) 2;
    if x *. x +. y *. y <= 1. then
      p := !p + 1
  done;
  let pi = 4. *. float !p /. float n in
  Printf.printf "%f\n" pi;
  flush stdout;
  ignore (read_key ())

This document was generated using caml2html