Are there any conventional ways, like with predefined functions, for getting the minimum or maximum value of a list; or, do I have to define that myself with something like this?
define :lesser do |a, b|
if a <= b then
return a
else
return b
end
end
define :min do |list|
low = list[0]
list.each do |n|
if n < low then
low = n
end
end
return low
end
Ruby has built in functions for this.
puts [3,5].min # => 3
puts [-4,-6].max # => -4
#also this
puts [1,-3,65,23].minmax # => [-3,65]
#you can have long lists in the first two rather than just comparing two values
if you want you could define your own functions for this eg
define :minValue do |a,b|
return [a,b].min
end
define :maxValue do |a,b|
return [a,b].max
end
puts minValue(4,4.1) # => 4
puts maxValue(4,4.1) # => 4.1
2 Likes
If this was SO, I wouldn’t leave a reply just to say “Thanks!”, but this seems like the polite thing to do. I really appreciate it!
2 Likes