Skip to content

Instantly share code, notes, and snippets.

@samueldowens
Created October 9, 2013 13:24
Show Gist options
  • Select an option

  • Save samueldowens/6901205 to your computer and use it in GitHub Desktop.

Select an option

Save samueldowens/6901205 to your computer and use it in GitHub Desktop.
triangle to_do
class Triangle
attr_accessor :side1, :side2, :side3
def initialize(side1, side2, side3)
@side1 = side1
@side2 = side2
@side3 = side3
end
def kind
if @side1 + @side2 <= @side3 || @side1 + @side3 <= @side2 || @side2 + @side3 <= @side1
begin
raise TriangleError
end
elsif @side1 == @side2 && @side2 == @side3
:equilateral
elsif @side1 == @side2 || @side2 == @side3 || @side1 == @side3
:isosceles
else
:scalene
end
end
end
class TriangleError < StandardError
def initialize(msg = "You've triggered a Triangle Error")
super(msg)
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment