def je_prestupny(rok): return rok % 4 == 0 and ((rok % 100 != 0) or (rok % 400 == 0)) def cislo_dne(d, m, r): mes = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] for i in range(1,12): mes[i] += mes[i-1] if je_prestupny(r) and m > 2: d += 1 return 365*(r-1) + (r-1)//4 - (r-1)//100 + (r-1)//400 + mes[m-1] + d return int(365.2425*(r-1)) + mes[m-1] + d def pocet_dnu(d1,m1,r1, d2,m2,r2): assert r1 > 0 assert r2 > 0 assert r2 >= r1 return cislo_dne(d2,m2,r2) - cislo_dne(d1,m1,r1)