Jump to content

Holidays related to Easter: Difference between revisions

(Added Fōrmulæ solution)
(→‎{{header|BASH}}: Adding BASH)
Line 520:
2020 Easter: Sun 12 Apr, Ascension: Thu 21 May, Pentecost: Sun 31 May, Trinity: Sun 7 Jun, Corpus: Thu 11 Jun
</pre>
 
=={{header|BASH}}==
<lang bash>
#! /bin/bash
# vim: ts=4 :
# Calendar algorithm source: https://www.rmg.co.uk/stories/topics/when-easter
 
 
easter() {
y=$1
if [[ $year -gt 2099 ]]
then
echo Error: This algorithm does not work after 2099.
exit
fi
 
(( day = 225 - 11 * (year % 19) ))
 
while [[ $day -gt 50 ]]
do
(( day -= 30 ))
done
 
if [ $day -gt 48 ]
then
(( --day ))
fi
 
(( day = day + 7 - (year + year/4 + day + 1) % 7 ))
 
echo $day
}
 
for year in {1998..2099}
do
day=$( easter $year )
if [ $day -gt 31 ]
then
(( day -= 31 ))
printf "%d-%02d-%02d\n" $year 4 $day
else
printf "%d-%02d-%02d\n" $year 3 $day
fi
done
 
</lang>
 
=={{header|BBC BASIC}}==
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.