hello.ml 837 B

1234567891011121314151617181920212223242526272829303132333435
  1. let max x y z = max (max x y) z;;
  2. max 4 6 7;;
  3. let rec pgcd a b =
  4. if b = 0 then a
  5. else pgcd b (a mod b);;
  6. let rec power base exponent =
  7. if exponent = 0 then 1
  8. else if exponent < 0 then
  9. 1 / power base (-exponent)
  10. else base * power base (exponent - 1);;
  11. power 10 100;;
  12. let rec fib n =
  13. if n <= 0 then 0.
  14. else if n = 1 then 1.
  15. else fib (n-1) +. fib (n-2);;
  16. let curry f (x, y) = f x y;;
  17. let uncurry f x y = f (x, y);;
  18. let module_of_complex re im = sqrt (re ** 2.0 +. im ** 2.0);;
  19. let egalite (num1, den1) (num2, den2) =
  20. num1 * den2 = num2 * den1;;
  21. let rec sequence_term u n =
  22. if n = 0 then u
  23. else sequence_term (sin u) (n - 1);;
  24. let rec u n = match n with
  25. | 0 -> 2.0
  26. | _ -> (u (n-1) +. v (n-1))/. 2.0
  27. and v n = match n with
  28. | 0 -> 1.0
  29. | _ -> (2.0 *. v (n-1) *. u (n-1))/.(u (n-1) +. v (n-1));;
  30. u 50;;