Sha256: 6aa50b79ed6264bc35e8883a19496efbd515ba6f2505e30f41aca141f683cb80

Contents?: true

Size: 420 Bytes

Versions: 15

Compression:

Stored size: 420 Bytes

Contents

open Core.Std

let sort_sides a b c = 
  let side = List.nth_exn (List.sort ~cmp:Int.compare [a; b; c]) in
  (side 0, side 1, side 2)

let is_triangle a b c = 
  let (a, b, c) = sort_sides a b c in
  c > 0 && c <= a + b

let is_equilateral a b c = is_triangle a b c && a = b && b = c

let is_isosceles a b c = is_triangle a b c && (a = b || b = c || a = c)

let is_scalene a b c = is_triangle a b c && (a <> b && b <> c)

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
trackler-2.1.0.21 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.20 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.19 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.18 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.17 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.16 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.15 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.14 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.13 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.12 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.11 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.10 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.9 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.8 tracks/ocaml/exercises/triangle/example.ml
trackler-2.1.0.7 tracks/ocaml/exercises/triangle/example.ml