class LemonadeStand::Choice
Constants
- DEMAND
- HIGH_PRICE
Attributes
glasses_made[RW]
price_per_glass[RW]
signs[RW]
Public Instance Methods
max_sales()
click to toggle source
# File lib/lemonade_stand/choice.rb, line 11 def max_sales sales_factor + (sales_factor * signs_factor) end
Private Instance Methods
sales_factor()
click to toggle source
# File lib/lemonade_stand/choice.rb, line 29 def sales_factor result = if price_per_glass < 10 (HIGH_PRICE - price_per_glass) / HIGH_PRICE * 0.8 * DEMAND + DEMAND else (HIGH_PRICE * HIGH_PRICE) * DEMAND / (price_per_glass * price_per_glass) end result end
signs_factor()
click to toggle source
# File lib/lemonade_stand/choice.rb, line 38 def signs_factor 1.0 - Math.exp((-1.0 * signs) * 0.5) end