Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * \file easter.c
- *
- */
- #include <stdio.h>
- /**
- * \brief: oster-kontrolle
- * guck fuer alle Jahre im eingabe-file an welchem Datum in dem jahr
- * ostern war und gibt sie isn ausgabefile aus
- * die steps 1-8 sind auf uebungsblatt 2 aufgabe 1 aufgefuert
- * \return 0
- */
- int main (int year, char **out)
- {
- int golden; /* das goldene Jahr*/
- int century;/* jahrundert*/
- int epact; /*vollmond-angabe*/
- int schalt; /* ausgelassene schaltjahre*/
- int moonorbit; /*faktor für die korrekru der Monumlaufbahn*/
- int sonntag; /* faktor zum bestimmen des sonntages*/
- int datum; /* das endgültige datum */
- while( scanf("%i",&year) == 1){
- golden = year % 19 +1; /* step1 */
- century = year / 100 +1; /* step2 */
- schalt = (3 * century / 4) -12; /* step3 */
- moonorbit = ((8 * century + 5) / 25) - 5;
- sonntag = (5*year / 4 ) - schalt - 10; /* step4 */
- epact = (11 * golden + 20 + moonorbit - schalt) % 30; /* step5 */
- if( (epact == 25 && golden > 11) || epact == 24){
- epact++;
- }
- datum = 44 - epact; /* step6 */
- if(datum < 21) datum+= 30;
- datum = datum + 7 - ((sonntag + datum) % 7); /* step 7 */
- /* step8 */
- if( datum > 31) {
- datum = datum -31;
- printf("%d - April %d \n",year, datum);
- }
- else{
- printf("%d - March %d \n",year, datum);
- };
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement