Method: MoreMath::Functions.log_floor

Defined in:
lib/more_math/functions.rb

.log_floor(n, b = 2) ⇒ Object

Raises:

  • (ArgumentError)


171
172
173
174
175
176
177
178
179
180
# File 'lib/more_math/functions.rb', line 171

def log_floor(n, b = 2)
  raise ArgumentError, "n is required to be > 0" unless n > 0
  raise ArgumentError, "b is required to be > 1" unless b > 1
  e, result = 1, 0
  until e * b > n
    e *= b
    result += 1
  end
  result
end