Program of printing calender by giving date in java

public static void main(String[] args)
{int a=0;
int E=0;
int A=0;
int D=0;
int end=0;
int t=1;
char y[]=new char[4];
int year[]=new int[4];
int c[]=new int[2];
System.out.println("enter any date ");
Scanner in=new Scanner(System.in);
int d=in.nextInt();//day
int m=in.nextInt();//month
in.nextLine();
String yy=in.nextLine();//year
for(int i=0;i<4;i++)
{
y[i]=yy.charAt(i);
year[i]=((int)y[i])-48;
}
c[0]=(((year[0])*10)+year[1]);
c[1]=(((year[2])*10)+year[3]);
int B=(c[0]*100)+c[1];
int dd=d%7;
if ((B%4==0)&&(m==2))
{
end=29;
}
else if(m==2)
{
end=28;
}
switch(m)
{
case 1:
a=0;
end=31;
break;
case 2:
a=3;
break;
case 3:
a=3;
end=31;
break;
case 4:
a=6;
end=30;
break;
case 5:
a=1;
end=31;
break;
case 6:
a=4;
end=30;
break;
case 7:
a=6;
end=31;
break;
case 8:
a=2;
end=30;
break;
case 9:
a=5;
end=31;
break;
case 10:
a=0;
end=30;
break;
case 11:
a=3;
end=31;
break;
case 12:
a=5;
end=30;
break;
default :
    System.out.println("wrong month");
}
int x=c[0]/4;
x++;
x*=4;int C=0;
A=((x-1)-c[0])*2;
if(((m==1)||(m==2))&&(B%4==0))
{
C=((c[1]+(c[1]/4))%7)-1;
}
else
{ C=(c[1]+(c[1]/4))%7;
}
 D=(dd+a+A+C)%7;//offset value of day
 switch(D)
 {  case 0:
        System.out.println("sunday");
break;
    case 1:
   System.out.println("monday");
break;
case 2:
System.out.println("tuesday");
break;
case 3:
System.out.println("wednesday");
break;
case 4:
System.out.println("thursday");
break;
case 5:
System.out.println("friday");
break;
case 6:
System.out.println("saturday");
break;
default :
        System.out.println("you have given wrong date");
break;
}
System.out.println("  CALENDAR OF ENTERED MONTH AND "+B+"year");
System.out.println("  _______________________________________");
System.out.println("sun mon tue wed thurs fri sat");
E=(1+a+A+C)%7;
switch(E)
{
case 1:
System.out.print("\t");
break;
case 2:
System.out.print("\t\t");
break;
case 3:
System.out.print("\t\t\t");
break;
case 4:
System.out.print("\t\t\t\t");
break;
case 5:
System.out.print("\t\t\t\t\t");
break;
case 6:
System.out.print("\t\t\t\t\t\t");
break;
}
int i=1;
for(i=1;i<=(7-E);i++)
{
System.out.print(" "+i+"   ");
}
System.out.println();
for(int j=i;j<=end;j++)
{

if(t==8)
{
System.out.println();
t=1;
}
System.out.print(" "+j+"   ");
t++;
}
}
}

Comments

Post a Comment