Posted by: batuwa September 29, 2006
Java Help
Login in to Rate this Post:     0       ?        
Slack, I had done this leap thing in C.... I hope the following code help you understand the LOGIC. I don't think you have to care about Julian or Gregorial calender, which creates even more confusion... but third section if if/else may help you... good luck! if ((inputYear >= -46) && (inputYear <= -1)) { inputYear = (-1*inputYear); printf("\nYou entered %d BCE",inputYear); if ((inputYear % 4) == 0) printf("\n\nThe year %d BCE is a leap year in Julian Calender.",inputYear); else printf("\n\nThe year %d BCE is not a leap year in Julian Calender.",inputYear); } else if ((inputYear >= 1) && (inputYear <= 1752)) { printf("\nYou entered %d CE",inputYear); if ((inputYear % 4) == 0) printf("\n\nThe year %d CE is a leap year in Julian Calender.",inputYear); else printf("\n\nThe year %d CE is not a leap year in Julian Calender.",inputYear); } else if (inputYear >= 1753 && inputYear <= 4000) { printf("\n\nYou entered %d CE",inputYear); if ((inputYear % 4) == 0) { if ((inputYear % 100) == 0) { if ((inputYear % 400) == 0) printf("\n\nThe year %d CE is a leap year in Gregorian Calender.",inputYear); else printf("\n\nThe year %d CE is not a leap year in Gregorian Calender.",inputYear); } else if ((inputYear % 100) != 0) printf("\n\nThe year %d CE is a leap year in Gregorian Calender.",inputYear); } else printf("\n\nThe year %d CE is not a leap year in Gregorian Calender.",inputYear); } else if (inputYear <= - 47) { printf("You entered %d BCE",inputYear); printf("\n\nThe year %d BCE is below the valid range",inputYear); } else { printf("You entered %d CE",inputYear); printf("\n\nThe year %d CE is above the valid range",inputYear); }
Read Full Discussion Thread for this article