我矩陣是這樣的:過程中有某些矩陣的每個元素並返回一個值
my_matrix = [['regular', '16/03/2009', '17/03/2009', '18/03/2009'],
['regular', '20/03/2009', '21/03/2009', '22/03/2009'],
['rewards', '26/03/2009', '27/03/2009', '28/03/2009']]
我需要驗證,如果第一個元素是「常規」或「獎勵」,並驗證每個日期第一個元素,處理一些東西並返回一個值。
例如:
['regular', '20/03/2009', '21/03/2009', '22/03/2009']
第一個元素是'regular'
和,我需要循環通過陣列驗證的其餘部分,如果每個日期是工作日或週末,然後過程的東西。如果週末比周末更多,則處理另一件事。
我已經試過這樣:
HOTELS = {
:RIDGEWOOD => 'RidgeWood',
:LAKEWOOD => 'LakeWood',
:BRIDGEWOOD => 'BridgeWood'
}
def weekend?(date)
datetime = DateTime.parse(date.to_s)
datetime.saturday? || datetime.sunday?
end
def find_the_cheapest_hotel(text_file)
@costumer_request = File.open(text_file){|io| io.each_line.map{|line| line.split(/[:,\s]+/)}}
@costumer_request.each do |line|
line.each do |value|
if line.shift == 'regular'
if weekend?(line)
print 'weekend regular'
else
print 'weekday regular'
end
elsif line.shift == 'rewards'
if weekend?(line)
print 'weekend rewards'
else
print 'weekday rewards'
end
end
end
它得到這個['regular', '16/03/2009', '17/03/2009', '18/03/2009']
並返回此 平日平日平日 我要處理的東西E各自陣不僅在第一。
聽起來不錯!馬上行動,做到這一點。 (你有什麼問題嗎?你嘗試了什麼,但它不起作用?什麼?) – matt 2013-04-30 17:57:58
我把我的源代碼放在問題中,請看看:) – 2013-04-30 18:02:15