Created
March 18, 2018 01:31
-
-
Save aaronkelton/47abbe7d7b71dde267d03ab861e4dd29 to your computer and use it in GitHub Desktop.
Revisions
-
aaronkelton created this gist
Mar 18, 2018 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,30 @@ # Triangle Project Code. # Triangle analyzes the lengths of the sides of a triangle # (represented by a, b and c) and returns the type of triangle. # # It returns: # :equilateral if all sides are equal # :isosceles if exactly 2 sides are equal # :scalene if no sides are equal # # The tests for this method can be found in # about_triangle_project.rb # and # about_triangle_project_2.rb # def triangle(a, b, c) raise TriangleError if (a <= 0) or (b <= 0) or (c <= 0) raise TriangleError if (a + b <= c) or (a + c <= b) or (b + c <= a) if a == b and b == c :equilateral elsif (a == b and a != c) or (a == c and a != b) or (b == c and b != a) :isosceles else :scalene end end # Error class used in part 2. No need to change this code. class TriangleError < StandardError end