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:

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