How to get the first N digits of a BigInteger in Ruby

1 Answer

0 votes
# Extracts the first n digits from a large integer.
# Ruby's Integer type automatically expands to handle very large values,
# so converting the number to a string is the most direct and efficient way
# to access its digits.
def first_n_digits(value, n)
  # Convert the integer to its decimal string representation.
  s = value.to_s

  # If n exceeds the number of digits, return the whole number.
  return s if n >= s.length

  # Return the first n characters (digits).
  s[0, n]
end

def main
  # Define a very large integer directly.
  # Ruby handles large integers seamlessly.
  big_number = 1234567890123456789012345678901234567890

  # Choose how many digits to extract.
  n = 16

  # Extract the first n digits.
  result = first_n_digits(big_number, n)

  # Display the result.
  puts "First #{n} digits: #{result}"
end

main



=begin
run:

First 16 digits: 1234567890123456

=end

 



answered Aug 14 by avibootz
...