class Lotto::Draw
Public Instance Methods
basket()
click to toggle source
# File lib/lotto/draw.rb, line 26 def basket numbers = (1..@options[:of]) numbers = numbers.reject{ |n| @options[:include].include? n } unless @options[:include].nil? numbers = numbers.reject{ |n| @options[:exclude].include? n } unless @options[:exclude].nil? numbers end
draw()
click to toggle source
# File lib/lotto/draw.rb, line 8 def draw drawns = [] @options[:include].each{ |n| drawns << n } unless @options[:include].nil? count = @options[:include] ? @options[:pick] - @options[:include].count : @options[:pick] count.times{ drawns << pick(drawns) } drawns end
draw_multiple()
click to toggle source
# File lib/lotto/draw.rb, line 16 def draw_multiple coupons = [] @options[:for].times{ coupons << draw } coupons end
pick(drawns = [])
click to toggle source
# File lib/lotto/draw.rb, line 22 def pick(drawns = []) basket.reject { |n| drawns.include? n }.sample end
play(options)
click to toggle source
# File lib/lotto/draw.rb, line 3 def play(options) @options = options @options[:for].nil? ? draw : draw_multiple end