def getA(rok): if rok>=33 and rok<=1582: return 15 if rok>=1583 and rok<=1699: return 22 if rok>=1700 and rok<=1799: return 23 if rok>=1800 and rok<=1899: return 23 if rok>=1900 and rok<=2099: return 24 if rok>=2100 and rok<=2199: return 24 if rok>=2200 and rok<=2299: return 25 if rok>=2300 and rok<=2399: return 26 if rok>=2400 and rok<=2499: return 25 if rok>=2500 and rok<=2599: return 26 if rok>=2600 and rok<=2699: return 27 if rok>=2700 and rok<=2899: return 27 if rok>=2900 and rok<=2999: return 28 def getB(rok): if rok>=33 and rok<=1582: return 6 if rok>=1583 and rok<=1699: return 2 if rok>=1700 and rok<=1799: return 3 if rok>=1800 and rok<=1899: return 4 if rok>=1900 and rok<=2099: return 5 if rok>=2100 and rok<=2199: return 6 if rok>=2200 and rok<=2299: return 0 if rok>=2300 and rok<=2399: return 1 if rok>=2400 and rok<=2499: return 1 if rok>=2500 and rok<=2599: return 2 if rok>=2600 and rok<=2699: return 3 if rok>=2700 and rok<=2899: return 4 if rok>=2900 and rok<=2999: return 5 def data_gr(rok): A=getA(rok) B=getB(rok) a=rok % 19 b=rok % 4 c=rok % 7 d=(a*19+A) % 30 e=(2*b+4*c+6*d+B) % 7 if (d+e)<10: print 'Wielkanoc wypada: ',(d+e+22), 'marca' if (d+e)>=10: if d==29 and e==6: print 'Wielkanoc wypada: 19 kwietnia' else: print 'Wielkanoc wypada: ',(d+e-9), 'kwietnia' def data_ju(rok): A=15 B=6 a=rok % 19 b=rok % 4 c=rok % 7 d=(a*19+A) % 30 e=(2*b+4*c+6*d+B) % 7 if (d+e)<10: print 'Wielkanoc wypada: ',(d+e+22), 'marca' if (d+e)>=10: print 'Wielkanoc wypada: ',(d+e-9), 'kwietnia' @interact def wielkanoc(rok=2016): if rok>=1583 and rok<=2999: print 'Kalendarz gregorianski:' if rok==1954 or rok==2049 or rok==2106: print 'Wielkanoc wypada: 18 kwietnia' else: data_gr(rok) if rok<1583 or rok>2999: print 'Rok spoza dopuszczalnego zakresu' if rok>=1583 and rok<=2999: print 'Kalendarz julianski:' data_ju(rok) if rok<1583 or rok>2999: print 'Rok spoza dopuszczalnego zakresu'
Interact: please open in CoCalc