ostern.c (15714) | ostern.c (15720) |
---|---|
1/* 2 * Copyright (c) 1995 Wolfram Schneider. Public domain. 3 * | 1/* 2 * Copyright (c) 1995 Wolfram Schneider. Public domain. 3 * |
4 * $Id: ostern.c,v 1.1 1996/02/02 06:02:40 wosch Exp $ | 4 * $Id: ostern.c,v 1.2 1996/05/10 16:29:42 ache Exp $ |
5*/ 6 7#include <string.h> 8#include <stdlib.h> | 5*/ 6 7#include <string.h> 8#include <stdlib.h> |
9#include <stdio.h> |
|
9 | 10 |
11#include "calendar.h" 12 |
|
10/* return year day for Easter */ 11 12int easter (year) 13 int year; /* 0 ... abcd, NOT since 1900 */ 14{ 15 16 int e_a, e_b, e_c, e_d, e_e,e_f, e_g, e_h, e_i, e_k, 17 e_l, e_m, e_n, e_p, e_q; --- 39 unchanged lines hidden (view full) --- 57 */ 58 59int 60geteaster(s, year) 61 char *s; 62 int year; 63{ 64 register int offset = 0; | 13/* return year day for Easter */ 14 15int easter (year) 16 int year; /* 0 ... abcd, NOT since 1900 */ 17{ 18 19 int e_a, e_b, e_c, e_d, e_e,e_f, e_g, e_h, e_i, e_k, 20 e_l, e_m, e_n, e_p, e_q; --- 39 unchanged lines hidden (view full) --- 60 */ 61 62int 63geteaster(s, year) 64 char *s; 65 int year; 66{ 67 register int offset = 0; |
68 extern struct fixs neaster; |
|
65 66#define EASTER "easter" 67#define EASTERNAMELEN (sizeof(EASTER) - 1) 68 | 69 70#define EASTER "easter" 71#define EASTERNAMELEN (sizeof(EASTER) - 1) 72 |
69 /* no easter */ 70 if (strncasecmp(s, EASTER, EASTERNAMELEN)) | 73 if (strncasecmp(s, EASTER, EASTERNAMELEN) == 0) 74 s += EASTERNAMELEN; 75 else if ( neaster.name != NULL 76 && strncasecmp(s, neaster.name, neaster.len) == 0 77 ) 78 s += neaster.len; 79 else |
71 return(0); 72 73#if DEBUG 74 printf("%s %d %d\n", s, year, EASTERNAMELEN); 75#endif 76 77 /* Easter+1 or Easter-2 78 * ^ ^ */ 79 | 80 return(0); 81 82#if DEBUG 83 printf("%s %d %d\n", s, year, EASTERNAMELEN); 84#endif 85 86 /* Easter+1 or Easter-2 87 * ^ ^ */ 88 |
80 switch(*(s + EASTERNAMELEN)) { | 89 switch(*s) { |
81 82 case '-': | 90 91 case '-': |
83 offset = -(atoi(s + EASTERNAMELEN + 1)); 84 break; 85 | |
86 case '+': | 92 case '+': |
87 offset = atoi(s + EASTERNAMELEN + 1); | 93 offset = atoi(s); |
88 break; 89 90 default: 91 offset = 0; 92 } 93 94 return (easter(year) + offset); 95} | 94 break; 95 96 default: 97 offset = 0; 98 } 99 100 return (easter(year) + offset); 101} |