Public feed
#888439
#include <iostream>
using namespace std;
int days_in_month[] = {0,31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; // Non leap year
int days_in_month_ly[] = {0,31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; // leap year
int days_in_month_summed[] = {0,31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365}; // Non leap year
int days_in_month_summed_ly[] = {0,31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335, 366}; // leap year
char* month_names[]={"","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};
const int DAYSINYEAR = 365;
const int DAYSINMONTH = 30;
int main(int argc, char* argv[])
{
int totalDays;
cout << "total days = ";
cin >> totalDays;
int year = totalDays / DAYSINYEAR;
cout << "year = " << year << endl;
int remainingDays = totalDays % DAYSINYEAR;
cout << "remain days = " << remainingDays << endl;
int month = max(1, remainingDays / DAYSINMONTH);
cout << "month = " << month << endl;
int day = max(1, remainingDays % DAYSINMONTH);
cout << "day = " << day << endl;
int actual_days = days_in_month[month];
cout << "actual days = " << actual_days << endl;
int days_change = actual_days - DAYSINMONTH;
cout << "day change = " << days_change << endl;
day = day - days_change;
cout << "day = " << day << endl;
int leap_days = year/4 - year/100 + year/400;
cout << "leap days = " << leap_days << endl;
cout << month_names[month] << " " << day << ", " << year+1600 << endl;
return 0;
}