Search This Blog

Program to generate the calender of a Month

Wap to generate the calender of a Month in c++

 #‎include‬<iostream.h>  

 #include<conio.h>  
 class fusis  
 {  
 public:  
 void print(int,int);  
 };  
 void fusis:: print(int m,int y)  
 {  
 int i;  
 char str1[7][4]={"sun","mon","Tue","Wed","Thu","Fri","sat"};  
 char str2[12][10]={"JANUARY","FEBUARY","MARCH","APRIL","MAY","JUNE","JULY","AUGUST","SEPTEMBER","OCTOBER","NOVEMBER","DECEMBER"};  
 cout<<"\n ";  
 cout<<str2[m-1]<<" "<<y<<endl;  
 cout<<" ";  
 for(i=0;i<7;i++)  
 cout<<" "<<str1[i]<<" ";  
 cout<<endl;  
 }  
 class Array : public fusis  
 {  
 int x,a[6][7];  
 public:  
 void arr(int,int,int);  
 };  
 void Array :: arr(int fd,int mm,int yy)  
 {  
 fusis::print(mm,yy);  
 int k=1;  
 if(mm==2)  
 {  
 if(yy%100==0?yy%400==0:yy%4==0)  
 x=29;  
 else  
 x=28;  
 }  
 else if(mm==1||mm==3||mm==5||mm==7||mm==8||mm==10||mm==12)  
 x=31;  
 else  
 x=30;  
 for(int i=0;i<6;i++)  
 {  
 for(int j=0;j<7;j++)  
 {  
 if(fd>0||k>x)  
 {  
 cout<<" ";  
 fd--;  
 }  
 else  
 {  
 if(k<10)  
 cout<<" 0"<<k<<" ";  
 else  
 cout<<" "<<k<<" ";  
 k++;  
 }  
 }  
 cout<<"\n";  
 }  
 }  
 class firstday  
 {  
 int a,a1,a2,b,b1,z,b2;  
 public:  
 int first(int,int);  
 };  
 int firstday :: first(int mm,int yy)  
 {  
 int i,d=0,sm=0;  
 yy=yy-1;  
 a=yy%400;  
 b=yy/400;  
 a1=a%100;  
 b1=a/100;  
 a2=a1/4;  
 b2=a1-a2;  
 yy=yy+1;  
 for(i=1;i<mm;i++)  
 {  
 if(i==2)  
 {  
 if(yy%100==0?yy%400==0:yy%4==0)  
 d=d+29;  
 else  
 d=d+28;  
 }  
 else if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)  
 d=d+31;  
 else  
 d=d+30;  
 }  
 sm= b*0+b1*5+a2*2+b2*1+d+1;  
 sm=sm%7;  
 return sm;  
 }  
 void main()  
 {  
 int mm,yy,dd,k;  
 clrscr();  
 cout<<"Enter month and year"<<endl;  
 cin>>mm>>yy;  
 firstday f;  
 k=f.first(mm,yy);  
 Array a;  
 a.arr(k,mm,yy);  
 getch();  
 }  
  OUTPUT: 
              

For details see my another program Click Program to find day from a given date

1 comment:

  1. swashbuckling effort......vry nice....sir this helped meh alot

    ReplyDelete

leave a comment here