Each one builds on the previous, ie. I re-use constants defined earlier.
HOURS_IN_DAY = 24
DAYS_IN_YEAR = 365.242199
HOURS_IN_YEAR = HOURS_IN_DAY * DAYS_IN_YEAR
puts "Hours in an astronomical year: #{HOURS_IN_YEAR}"
MINUTES_IN_HOUR = 60
MINUTES_IN_DECADE = 10 * MINUTES_IN_HOUR * HOURS_IN_YEAR
puts "Minutes in a decade: #{MINUTES_IN_DECADE}"
require 'date'
BIRTH_DATE = Date.new(1971,6,6)
SECONDS_IN_HOUR = 3600
SECONDS_IN_DAY = SECONDS_IN_HOUR * HOURS_IN_DAY
puts "My age in seconds: #{(Date.today - BIRTH_DATE).to_i * SECONDS_IN_DAY}"
AGE_IN_SECONDS = 1025 * 10**6
SECONDS_IN_YEAR = SECONDS_IN_DAY * DAYS_IN_YEAR
puts "Author's age: #{AGE_IN_SECONDS / SECONDS_IN_YEAR}"
names = []
%w/first second last/.each do |n|
print "#{n.capitalize} name: "
answer = gets.chomp
names.push( answer ) if answer.length > 0
end
puts "Hello #{names.join(' ')}"
print "What's your favorite number: "
answer = gets.chomp
puts "Don't you think #{ answer.to_i + 1 } is a bigger and better favorite number?"