Iterates the given block over all prime numbers.
See Prime
each for more details.
# File lib/backports/1.9.1/stdlib/prime.rb, line 40 def Integer.each_prime(ubound, &block) # :yields: prime Prime.each(ubound, &block) end
Re-composes a prime factorization and returns the product.
See Prime#int_from_prime_division for more details.
# File lib/backports/1.9.1/stdlib/prime.rb, line 21 def Integer.from_prime_division(pd) Prime.int_from_prime_division(pd) end
Standard in ruby 1.8.7+. See official documentation
# File lib/backports/1.8.7/integer.rb, line 6 def even? self[0].zero? end
Standard in ruby 1.8.7+. See official documentation
# File lib/backports/1.8.7/integer.rb, line 11 def odd? !even? end
Standard in ruby 1.8.7+. See official documentation
# File lib/backports/1.8.7/integer.rb, line 16 def ord self end
Standard in ruby 1.8.7+. See official documentation
# File lib/backports/1.8.7/integer.rb, line 21 def pred self - 1 end
Returns true if self
is a prime number, false for a composite.
# File lib/backports/1.9.1/stdlib/prime.rb, line 33 def prime? Prime.prime?(self) end
Returns the factorization of self
.
See Prime#prime_division for more details.
# File lib/backports/1.9.1/stdlib/prime.rb, line 28 def prime_division(generator = Prime::Generator23.new) Prime.prime_division(self, generator) end
# File lib/backports/1.9.1/integer.rb, line 5 def round_with_digits(ndigits=0) ndigits = Backports::coerce_to_int(ndigits) case when ndigits.zero? self when ndigits > 0 Float(self) else pow = 10 ** (-ndigits) remain = self % pow comp = self < 0 ? :<= : :< remain -= pow unless remain.send(comp, pow / 2) self - remain end end