forked from tdwojak/Python2018
39 lines
1.1 KiB
Python
39 lines
1.1 KiB
Python
#!/usr/bin/env python
|
|
# -*- coding: utf-8 -*-
|
|
|
|
"""
|
|
Napisz funkcję days_in_year zwracającą liczbę dni w roku (365 albo 366).
|
|
"""
|
|
|
|
def days_in_year(days):
|
|
if days % 4 == 0:
|
|
if days % 100 == 0:
|
|
if days % 400 == 0:
|
|
return 366
|
|
else:
|
|
return 365
|
|
else:
|
|
return 366
|
|
else:
|
|
return 365
|
|
|
|
# To determine whether a year is a leap year, follow these steps:
|
|
# If the year is evenly divisible by 4, go to step 2. Otherwise, go to step 5.
|
|
# If the year is evenly divisible by 100, go to step 3. Otherwise, go to step 4.
|
|
# If the year is evenly divisible by 400, go to step 4. Otherwise, go to step 5.
|
|
# The year is a leap year (it has 366 days).
|
|
# The year is not a leap year (it has 365
|
|
|
|
def tests(f):
|
|
inputs = [[2015], [2012], [1900], [2400], [1977]]
|
|
outputs = [365, 366, 365, 366, 365]
|
|
|
|
for input, output in zip(inputs, outputs):
|
|
if f(*input) != output:
|
|
return "ERROR: {}!={}".format(f(*input), output)
|
|
break
|
|
return "TESTS PASSED"
|
|
|
|
if __name__ == "__main__":
|
|
print(tests(days_in_year))
|