Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<conio.h>
- #include<iostream.h>
- int year[]={31,28,31,30,31,30,31,31,30,31,30,31};
- int change(int mm, unsigned long yy);
- int leapyear(unsigned long a);
- int main()
- {
- int mm,mmm;
- unsigned long yy;
- do
- {
- system("cls");
- printf("\n\tInsert Month\t: ");
- scanf("%d",&mm);
- printf("\n\tInsert Year\t: ");
- scanf("%lu",&yy);
- }
- while(mm>12||yy<1900);
- int day2,i;
- char q;
- char month[12][10]={"January","Fevruary","March","April","May","June","July","August","September","October","November","December"};
- do
- {
- system("cls");
- mmm=year[mm-1];
- if(mm==2)
- {
- if(leapyear(yy))
- mmm=29;
- }
- day2=change(mm,yy);
- if(day2==0)
- {
- day2=7;
- }
- printf("\n\n\n\n\n\t\t\t%s, %d\n\n\n",month[mm-1],yy);
- printf("\tSat\tSun\tMon\tTue\tWed\tThu\tFri\n\n");
- for(i=1;i<day2;i++)
- {
- printf("\t ");
- }
- for(i=1;i<=mmm;i++)
- {
- printf("\t%d",i);
- if(day2>6)
- {
- printf("\n");
- day2=1;
- continue;
- }
- day2++;
- }
- printf("\n\n\n\n\n\n\n\nh - Help");
- q=getch();
- if(q=='s'&&yy==1900)
- continue;
- if(q=='a'&&yy==1900&&mm==1)
- continue;
- switch(q)
- {
- case 'w':
- yy++;
- break;
- case 'a':
- if(mm==1)
- {
- mm=12;
- yy--;
- }
- else
- mm--;
- break;
- case 's':
- yy--;
- break;
- case 'e':
- system("cls");
- do
- {
- printf("\n\tInsert Month\t: ");
- scanf("%d",&mm);
- printf("\n\tInsert Year\t: ");
- scanf("%d",&yy);
- }
- while(mm>12||yy<1900);
- break;
- case 'd':
- if(mm==12)
- {
- mm=1;
- yy++;
- }
- else
- {
- mm++;
- }
- break;
- case 'h':
- system("cls");
- printf("\n\nw - Next year, same month\ns - Previous year, same month\na - Same year, previous month\nd - Same year, next month\ne - Jump to date\nAny other key to exit\n\nPress any key to go back to calender view");
- getch();
- break;
- default:
- return 0;
- }
- }
- while(1);
- }
- int change(int mm, unsigned long yy)
- {
- int day1=3,month1=1;
- unsigned long year1=1900;
- int i;
- for(;!(month1==mm&&year1==yy);)
- {
- day1+=year[month1-1];
- if(month1==2&&leapyear(year1))
- {
- day1++;
- }
- day1%=7;
- month1++;
- if(month1>12)
- {
- month1=1;
- year1++;
- }
- }
- return day1;
- }
- int leapyear(unsigned long a)
- {
- if( (a%400==0) || (a%4==0&&a%100!=0) )
- {
- return 1;
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment