Skip to content

Instantly share code, notes, and snippets.

@ornirus
Created November 7, 2014 09:00
Show Gist options
  • Save ornirus/1bb203a908d81027a3b4 to your computer and use it in GitHub Desktop.
Save ornirus/1bb203a908d81027a3b4 to your computer and use it in GitHub Desktop.
public class Calendar
{
private int[] monthDay = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
private String[] monthName = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
private int day, month, year;
public Calendar(int d, int m, int y)
{
year = y;
month = m;
day = d;
}
public boolean leapYear(int year)
{
boolean ans = false;
if(year % 4 == 0)
{
ans = true;
}
if(year % 100 == 0)
{
ans = false;
}
if(year % 400 == 0)
{
ans = true;
}
return ans;
}
public void incrementDate()
{
day = day + 1;
if(month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
{
if(day > 31)
{
month = month + 1;
day = 1;
}
}
if(month == 4 || month == 6 || month == 9 || month == 11)
{
if(day > 30)
{
month = month + 1;
day = 1;
}
}
if(month == 2)
{
if (leapYear(year))
{
if(day > 29)
{
month = month + 1;
day = 1;
}
}
else
{
if(day > 28)
{
month = month +1;
day = 1;
}
}
}
if(month > 12)
{
month = 1;
year = year + 1;
}
}
public void decrementDate()
{
day = day - 1;
if(day < 1)
{
month = month - 1;
if(month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
{
day = 31;
}
if(month == 4 || month == 6 || month == 9 || month == 11)
{
day = 30;
}
if(month == 2)
{
if (leapYear(year))
{
day = 29;
}
else
{
day = 28;
}
}
if(month < 1)
{
month = 12;
year = year - 1;
day = 31;
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment