/*
 * @topic T00040 Feb 28, 2013 -- Assignment a2, Serial Julian Date prototype
 * @brief An unfinished program with minimal function declarations and definitions
*/

#include <iostream>

//--------------------------------------
// function declarations:
//--------------------------------------
int serial_julian_date( int Month, char Day, int Year );
int serial_2_month( int nDate );
int serial_2_day( int nDate );
int serial_2_year( int nDate );

int main()
{
    // This is an endless loop:
    while ( true ) {
        //--------------------------------------
        // Compute serial date:
        //--------------------------------------
        int serial_date = serial_julian_date( 2, 28, 2013 );
        // This is what the compiler has to do to compile the above line:
        // push 2
        // push 28
        // push 2013
        // call "serial_julian_date" -- note address of serial_julian_date is unknown!
        // "serial_date" = AL

        //-----------------------------------------------------
        // Convert back from serial date to the calendar parts:
        //-----------------------------------------------------
        int Month = serial_2_month( serial_date );
        int Day = serial_2_day( serial_date );
        int Year = serial_2_year( serial_date );
    }
    return 0;
}

//--------------------------------------
// function definitions:
//--------------------------------------
int serial_julian_date( int Month, char Day, int Year )
{
    int nDate = 0;
    return nDate;
}

int serial_2_month( int nDate )
{
    return 0;
}

int serial_2_day( int nDate )
{
    return 0;
}

int serial_2_year( int nDate )
{
    return 0;
}