# Counts how many times each digit (0–9) appears in a given number
def digit_frequency(number)
# Convert number to string so we can iterate over each character
digits = number.to_s
# Initialize a hash with keys 0–9, all starting at 0
frequency = Hash[(0..9).map { |d| [d, 0] }]
# Go through each character, convert to integer, and increment its count
digits.each_char do |char|
digit = char.to_i
frequency[digit] += 1
end
frequency
end
# Usage:
puts digit_frequency(120220340501)
=begin
run:
{0 => 4, 1 => 2, 2 => 3, 3 => 1, 4 => 1, 5 => 1, 6 => 0, 7 => 0, 8 => 0, 9 => 0}
=end