lib/fibon.rb~ in fibon-0.0.5 vs lib/fibon.rb~ in fibon-0.0.6
- old
+ new
@@ -5,12 +5,14 @@
@x = ((1 / Math::sqrt(5))*(((1+Math::sqrt(5))/2)**(a))).round
end
def self.check(a)
value = false
+
firstcheck = (5*(a**2))+4
secondcheck = (5*(a**2))-4
+
if (self.isPerfectSquare(firstcheck) == true) or (self.isPerfectSquare(secondcheck) == true)
value = true
else
end
@@ -24,8 +26,35 @@
else
end
value
+ end
+
+ def self.nearest(x)
+ i = 0
+ value = 0
+
+ below = 0
+ above = 0
+
+ while x > above
+
+ i = i + 1
+ below = above
+ above = Fibon.place(i)
+
+ end
+
+ if x-below > above - x
+ value = above
+ else
+ value = below
+ end
+ puts below
+ puts above
+
+ puts value
+
end
end