Skip to content

Instantly share code, notes, and snippets.

@manleyhimself
Created October 9, 2013 15:50
Show Gist options
  • Select an option

  • Save manleyhimself/6903432 to your computer and use it in GitHub Desktop.

Select an option

Save manleyhimself/6903432 to your computer and use it in GitHub Desktop.
class TriangleError < Exception
end
class Triangle
attr_reader :side1, :side2, :side3
def initialize(side1, side2, side3)
@side1 = side1
@side2 = side2
@side3 = side3
@@side_arr = [@side1, @side2, @side3].sort
self.triangle?
end
def triangle?
min, mid, max = @@side_arr
raise TriangleError if min <= 0
raise TriangleError if max >= min + mid
end
def kind
tri_check = @@side_arr.uniq
if tri_check.length == 1
:equilateral
elsif tri_check.length == 2
:isosceles
else
:scalene
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment