Sha256: 018cfd843795cfa8874c92243ff714253e7d74818eb54852cd3ff00f1e7326b7

Contents?: true

Size: 420 Bytes

Versions: 42

Compression:

Stored size: 420 Bytes

Contents

open Base

let sort_sides a b c = 
  let side = List.nth_exn (List.sort ~compare: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

42 entries across 42 versions & 1 rubygems

Version Path
trackler-2.2.1.159 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.158 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.157 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.156 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.155 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.154 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.153 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.152 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.151 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.150 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.149 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.148 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.147 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.146 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.145 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.144 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.143 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.142 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.141 tracks/ocaml/exercises/triangle/example.ml
trackler-2.2.1.140 tracks/ocaml/exercises/triangle/example.ml