Skip to content

Instantly share code, notes, and snippets.

@HeroicEric
Forked from dgreenbe77/gist:9149957
Last active August 29, 2015 13:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save HeroicEric/9191731 to your computer and use it in GitHub Desktop.
Save HeroicEric/9191731 to your computer and use it in GitHub Desktop.
require 'pry'
def sort_from_biggest_to_smallest(sorted_statistics, unsorted_statistics)
unsorted = unsorted_statistics
popped_number = unsorted_statistics.pop
sorted = sorted_statistics
remaining_unsorted_objects = []
if unsorted.empty?
return sorted
end
until unsorted.empty?
if popped_number <= unsorted.last
remaining_unsorted_objects << popped_number
popped_number = unsorted.pop
else
remaining_unsorted_objects << unsorted.pop
end
end
sorted << popped_number
sort_from_biggest_to_smallest(sorted, remaining_unsorted_objects)
end
def average_number(unsorted_statistics)
total = 0
unsorted_statistics.each do |number|
total += number
end
average_number = total / unsorted_statistics.length
end
max_number = sort_from_biggest_to_smallest([],[75, 100, 85, 65, 84, 87, 95]).shift
min_number = sort_from_biggest_to_smallest([],[75, 100, 85, 65, 84, 87, 95]).pop
average = average_number([75, 100, 85, 65, 84, 87, 95])
puts average
puts min_number
puts max_number
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment