< previous page page_752 next page >

Page 752
{
    DayType  day;           // Loop counter
    DeptType dept;          // Loop counter
    char     deptChar;      // Printable department letter
    float    diffFromAvg;   // Difference from average
    float    percentDiff;   // Percent difference from average

    // Set up headings

    reportFile << setw(49) << ABSENTEE DATA << endl
               << setw(20) << Monday << setw(13) << Tuesday
               << setw(13) << Wednesday << setw(13) << Thursday
               << setw(13) << Friday << endl;
    reportFile << setw(7) <<  ;
    for (day = MONDAY; day <= FRIDAY; day = DayType (day +1))
        reportFile << setw(13) << Value   %;
    reportFile << endl;

    // Process table by row

    deptChar = A;
    for (dept = A; dept <= F; dept = DeptType(dept + 1))
    {
        reportFile << Dept << deptChar <<  ;
        for (day = MONDAY; day <= FRIDAY; day = DayType (day +1))
        {
            reportFile << setw(6) << absenteeData[dept][day];
            if (average[dept] > 0.0)
            {
                diffFromAvg = float(absenteeData[dept][day]) -
                              average[dept];
                percentDiff = diffFromAvg * 100.0 / average[dept];
            }
            else
                percentDiff = 0.0;

            if (percentDiff >= 0.0)
                reportFile << setw(7) << int(percentDiff + 0.5);
            else
                reportFile << setw(7) << int(percentDiff - 0.5);
        }
        reportFile << endl;
        deptChar++;
    }
}

 
< previous page page_752 next page >