How to extract the last N digits from a number in Ruby

1 Answer

0 votes
#
# Extracts the last N digits from a given number.
#
# Approach:
#   - To get the last N digits, compute: number % (10 ** digits)
#   - This avoids string manipulation and uses efficient arithmetic.
#
# Parameters:
#   number : the original integer
#   digits : how many digits to extract from the end
#
# Returns:
#   The last N digits as an integer.
#
def get_last_n_digits(number, digits)
  # Compute 10^digits using Ruby's exponent operator (**)
  divisor = 10 ** digits

  # Modulo returns the remainder, which is exactly the last N digits
  number % divisor
end

# Example values
number = 987_654_321
digits = 4

# Extract the last N digits
result = get_last_n_digits(number, digits)

# Display the result
puts "Original number: #{number}"
puts "Digits requested: #{digits}"
puts "Last #{digits} digits: #{result}"



=begin
run:

Original number: 987654321
Digits requested: 4
Last 4 digits: 4321

=end

 



answered Sep 18 by avibootz
...