longint findAmt(Date d)
{
longint amt = 0;
string n = equalDate(d);
if(n=="same hour")
{
amt += ((d.endMin - d.startMin)/5) +1;
return amt;
}
elseif(n=="same day")
{
//get mins and hrs
amt += (60-d.startMin)/5;
amt += ((d.endHour - 1) - (d.startHour+1)) * FILES_PER_HOUR;
amt += d.endMin/5;
return amt;
}
elseif(n=="same month")
{
//get min and days
amt += (60-d.startMin)/5;
amt += (12-(d.startHour+1))*FILES_PER_HOUR;
amt += ((d.endDay-1)-(d.startDay+1))*FILES_PER_DAY;
amt += (d.endHour - 1)*FILES_PER_HOUR;
amt += d.endMin/5;
return amt;
}
elseif(n=="same year")
{
//Get the hours and mins of each day
amt += (60-d.startMin)/5;
amt += (12-(d.startHour+1))*FILES_PER_HOUR;
amt += (d.endHour - 1)*FILES_PER_HOUR;
amt += d.endMin/5;
//get days
if(d.startMonth == 2)
{
amt += 28-(d.startDay+1)*FILES_PER_DAY;
}
elseif((d.startMonth%2) == 0|| d.startMonth == 9|| d.startMonth == 11)
{
amt += 30 - (d.startDay+1)*FILES_PER_DAY;
}
else
{
amt += 31 - (d.startDay+1)*FILES_PER_DAY;
}
amt += (d.endDay-1)*FILES_PER_DAY;
//get months
int x = d.startMonth +1;
while(x<d.endMonth)
{
if(x == 2)
{
amt += DAYS_IN_FEB * FILES_PER_DAY;
}
elseif((x%2) == 0 || x == 9 || x == 11)
{
amt += DAYS_IN_APRIL*FILES_PER_DAY;
}
else
{
amt += DAYS_IN_DEC*FILES_PER_DAY;
}
x++;
}
return amt;
}
else
{
//get years
amt += ((d.endYear-1) - (d.startYear+1))*FILES_PER_YEAR;
//get hours of the end and start days
amt += (60-d.startMin)/5;
amt += (12-(d.startHour+1))*FILES_PER_HOUR;
amt += (d.endHour - 1)*FILES_PER_HOUR;
amt += d.endMin/5;
//get the days of the months
if(d.startMonth == 2)
{
amt += 28-(d.startDay+1)*FILES_PER_DAY;
}
elseif((d.startMonth%2) == 0|| d.startMonth == 9|| d.startMonth == 11)
{
amt += 30 - (d.startDay+1)*FILES_PER_DAY;
}
else
{
amt += 31 - (d.startDay+1)*FILES_PER_DAY;
}
amt += (d.endDay-1)*FILES_PER_DAY;
//get months in years
int x = d.startMonth +1;
while(x<=12)
{
if(x == 2)
{
amt += DAYS_IN_FEB * FILES_PER_DAY;
}
elseif((x%2) == 0 || x == 9 || x == 11)
{
amt += DAYS_IN_APRIL*FILES_PER_DAY;
}
else
{
amt += DAYS_IN_DEC*FILES_PER_DAY;
}
x++;
}
x = 0;
while(x<d.endMonth)
{
if(x == 2)
{
amt += DAYS_IN_FEB * FILES_PER_DAY;
}
elseif((x%2) == 0 || x == 9 || x == 11)
{
amt += DAYS_IN_APRIL*FILES_PER_DAY;
}
else
{
amt += DAYS_IN_DEC*FILES_PER_DAY;
}
x++;
}
return amt;
}
}
and it returns -413. I need help
i am completely lost!!