open Printf
    
let fib_iter n =
   if (n<0) 
   then failwith "input negativo"
   else 
     if n < 2
     then  1
     else let fib_prev = ref 1
          and fib = ref 1 in
          for num = 2 to n do
             let temp = !fib in
             fib := !fib + !fib_prev;
             fib_prev := temp
          done;
          !fib

let alinea3 () =
  let _ = print_string "Introduza um inteiro: " in
  (printf " --> %d\n" (fib_iter (read_int ())))


let () = alinea3 ()

This document was generated using caml2html