Friday, December 12, 2008

A Calender Programme.[TURBO C ENVIRONMENT]

#include"stdio.h"
#include"conio.h"
#include"stdlib.h"
#include"time.h"
void cal(int yr,int mo,int fd,int da);
static char *months[]={
"January",
"Februay",
"March",
"April",
"May",
"June",
"July",
"Auguest",
"September",
"October",
"November",
"December",
};
int main(void)
{
static int days[12]={31,28,31,30,31,30,31,31,30,31,30,31}; //Here actually declare the last date of every month....
long int ndays,ldays,tydays,tdays;
int d,i,m,fday,y;
char ch;
clrscr();
printf("\t\t\tTHIS IS A CALENDER.\n");
printf("\tEnter Year(1975 onwards) & Month(Number)\n");
scanf("\t%d%d",&y,&m);

while(1)
{
ndays=(y-1)*365;
ldays=((y-1)/4)-((y-1)/100)+((y-1)/400);
tdays=ndays+ldays+1; //Total days.
//Check for leap year....
if((y%100==0&&y%400==0)(y%4==0&&y%100!=0))
days[1]=29;
else
days[1]=28;
d=days[m-1];
tydays=0;
for(i=0;i<=(m-2);i++)
tydays=tydays+days[i];
tdays=tydays+tdays;
fday=tdays%7;
cal(y,m,fday,d);
gotoxy(5,24);
switch(getche())
{
case ('r'): // Look.
if(m==12)
{
y++;
m=1;
}
else
m++;
break;
case ('u'):
y++;
continue;
case ('l'):
if(m==1)
{
y--;
m=12;
}
else
m--;
break;
case ('d'):
y--;
continue;
case ('q'):
{ clrscr();
gotoxy(30,19);
printf("Have A Good Day.");
gotoxy(28,12);
printf("PROGRAMMER ::KALLOL DEY.");
gotoxy(30,14);
printf("kit701@gmail.com");
exit(1);
}
}
}
return 0;
}
void cal(int yr,int mo,int fd,int da)
{
int i,r,c,j;
char a;
clrscr();
for(j=1;j<79;j++) //THIS PART IS FOR BORDER.
{
gotoxy(j,1);
printf("*");
gotoxy(j,23);
printf("*");
}
for(j=2;j<23;j++)
{
gotoxy(1,j);
printf("^");
gotoxy(78,j); //BORDER END.
printf("^");
}
gotoxy(27,3);
printf("%s %d",months[mo-1],yr);
gotoxy(11,5);
printf("________________________________________________");
gotoxy(16,6);
printf("Mon Tue Wed Thu Fri Sat Sun");
gotoxy(11,7);
printf("________________________________________________");
r=9;
c=11+6*fd;
for(i=1;i<=da;i++)
{
gotoxy(c+6,r);
printf("%2d",i);
if(c<=41)
c=c+6;
else
{
c=11;
r=r+1;
}
}
gotoxy(11,15);
printf("_________________________________________________");
gotoxy(19,17);
printf("[r]-Next Month.[l]-Prev Month.\n");
gotoxy(19,18);
printf("[u]-Next Year.[d]-Prev Year.");
gotoxy(21,19);
printf("Exit-[q]\n");
gotoxy(58,22);
printf("kit701@gmail.com");
time_t timer; //show time
struct tm *tblock;
/* gets time of day */
timer = time(NULL);
/* converts date/time to a structure */
tblock = localtime(&timer);
gotoxy(48,2);
printf("%s", asctime(tblock)); //time show end.
gotoxy(24,21);
printf("PROGRAMMER :: KALLOL DEY.\t06.09.2008\n");
}

No comments: