Five weekends: Difference between revisions

→‎{{header|Python}}: Add extra credit answer.
(Count rather than show years without 5 weekend months, for extra credit.)
(→‎{{header|Python}}: Add extra credit answer.)
Line 163:
 
DAY = timedelta(days=1)
START, STOP = date(1900, 1, 1), date(2101, 1, 1)
WEEKEND = {6, 5, 4} # Sunday is day 6
FMT = '%Y %m(%B)'
 
def fiveweekendspermonth(start=date(1900, 1, 1)START, stop=date(2101, 1, 1)STOP):
'Compute months with five weekends between dates'
Line 189 ⟶ 190:
print(indent +('\n'+indent).join(d.strftime(FMT) for d in dates[:5]))
print(indent +'...')
print(indent +('\n'+indent).join(d.strftime(FMT) for d in dates[-5:]))</lang>
 
print('\nThere are %i years in the range that do not have months with five weekends'
% len(set(range(START.year, STOP.year)) - {d.year for d in dates}))</lang>
 
'''Sample Output'''
Line 203 ⟶ 207:
2099 05(May)
2100 01(January)
2100 10(October)</pre>
 
There are 29 years in the range that do not have months with five weekends</pre>
 
=={{header|Ruby}}==
Anonymous user