class Basic101::BasicNumeric
Attributes
value[R]
Public Class Methods
new(value)
click to toggle source
# File lib/basic101/basic_numeric.rb, line 17 def initialize(value) @value = value end
Public Instance Methods
<=>(other)
click to toggle source
# File lib/basic101/basic_numeric.rb, line 21 def <=>(other) return nil unless other.is_a?(BasicNumeric) value <=> other.value end
abs()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 64 def abs self.class.new(@value.abs) end
cos()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 88 def cos BasicFloat.new(Math.cos(@value)) end
exp()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 72 def exp BasicFloat.new(Math::E ** @value).simplest end
log()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 80 def log BasicFloat.new(Math.log(@value)) end
negate()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 50 def negate self.class.new(-value) end
print_new_line(output)
click to toggle source
# File lib/basic101/basic_numeric.rb, line 60 def print_new_line(output) output.print "\n" end
print_string(output)
click to toggle source
# File lib/basic101/basic_numeric.rb, line 54 def print_string(output) s = format + ' ' s = ' ' + s unless s =~ /^-/ output.print s end
sgn()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 76 def sgn BasicInteger.new(@value <=> 0) end
simplest()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 42 def simplest if @value.modulo(1) == 0 to_integer else self end end
sin()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 84 def sin BasicFloat.new(Math.sin(@value)) end
sqr()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 68 def sqr BasicFloat.new(@value ** 0.5).simplest end
tan()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 92 def tan BasicFloat.new(Math.tan(@value)) end
to_b()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 38 def to_b to_i != 0 end
to_f()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 34 def to_f @value.to_f end
to_i()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 30 def to_i @value.to_i end
to_numeric()
click to toggle source
# File lib/basic101/basic_numeric.rb, line 26 def to_numeric self end