更新为了清楚起见:我有一个彩票的开始日期为星期三或星期六,而另一个彩票的开始日期为星期二或星期五。考虑到开始日期,我需要无限期地为这些票证提供未来绘图日期,并在相应票证的给定日期之间交替。开始日期已经过验证,可以在本周的这些日子里进行比赛。在Ruby中设置未来日期
我要检查的强力球图纸是在周三或周六的正确日期定连续:
# Increment zero is the first subsequent drawing
if increment.zero?
if starting_date.saturday? or starting_date.friday?
starting_date + 4.days
else
starting_date + 3.days
end
elsif increment == 1
starting_date + 1.week
else
if starting_date.saturday? or starting_date.friday?
starting_date + (increment/2.0).ceil.weeks + 4.days
else
starting_date + (increment/2.0).ceil.weeks + 3.days
end
end
一些结果我得到...
t.lines[0].draw_date #=> Wed, 09 Mar 2016
t.lines[1].draw_date #=> Sat, 12 Mar 2016
t.lines[2].draw_date #=> Wed, 16 Mar 2016
t.lines[3].draw_date #=> Sat, 19 Mar 2016
t.lines[4].draw_date #=> Sat, 26 Mar 2016
t.lines[5].draw_date #=> Sat, 26 Mar 2016
t.lines[6].draw_date #=> Sat, 02 Apr 2016
t.lines[7].draw_date #=> Sat, 02 Apr 2016
好像应该有一个简单的解决方案。
什么是't.lines'?什么是'draw_date'?你期望的结果是什么? – Stefan
每行应该是从前一天的下一个周三或周六 – tidelake