Code: Select all
#include<stdio.h>
#include<string.h>
int div_by_100(char *year)
{
long int i;
i=strlen(year);
if((year[i-1]=='0')&&(year[i-2]=='0'))
return 1;
return 0;
}
int div_by_4(char *year)
{
long int sum,i;
i=strlen(year);
sum=10*(year[i-2]-'0')+(year[i-1]-'0');
if(sum%4==0)
return 1;
return 0;
}
int div_by_400(char *year)
{
long int sum1,i;
i=strlen(year);
sum1=1000*(year[i-4]-'0')+100*(year[i-3]-'0')+10*(year[i-2]-'0')+(year[i-1]-'0');
if(sum1%400==0)
return 1;
return 0;
}
int div_by_5(char *year)
{
long int i;
i=strlen(year);
if((year[i-1]=='0')||(year[i-1]=='5'))
return 1;
return 0;
}
int div_by_3(char *year)
{
long int i,len;
long sum;
len=strlen(year);
sum=0;
for(i=0;i<len;i++)
{
sum+=(year[i]-'0');
}
if((sum%3)==0)
return 1;
return 0;
}
int div_by_15(char *year)
{
if((div_by_5(year))&&(div_by_3(year)))
return 1;
return 0;
}
int div_by_11(char *year)
{
long int i,len;
long sum;
len=strlen(year);
sum=0;
for(i=0;i<len;i++)
{
if(((i+1)%2)==0)
sum-=(year[i]-'0');
else
sum+=(year[i]-'0');
}
if((sum%11)==0)
return 1;
return 0;
}
int div_by_55(char *year)
{
if(div_by_11(year))
return 1;
return 0;
}
int main()
{
char year[100001];
int none=1;
int leap_year=0;
int flag=0;
while(gets(year))
{
if(((div_by_4(year))&&(div_by_100(year)==0))||(div_by_400(year)))
{
none=0;
leap_year=1;
printf("This is leap year.\n");
}
if((div_by_15(year)))
{
none=0;
printf("This is huluculu festival year.\n");
}
if(leap_year==1)
{
if(div_by_55(year))
printf("This is bulukulu festival year.\n");
}
if(none)
printf("This is an ordinary year.\n");
if(flag==0)
flag=1;
else
printf("\n");
none=1;
leap_year=0;
}
return 0;
}