Homework 6: Stats<T>

Official Release: Open for comment in the discussion forum.

Educational Objectives: After completing this assignment the student should have the following knowledge, ability, and skills:

Operational Objectives: Implement and test the class template TStats<T>.

Deliverables: Two files tstats.h and tstats.log

Procedural Requirements

  1. Copy the following files from the course library:

    hw6/test.cpp      # client program testing TStats<T>
    hw6/makefile      # builds test1.x, ... test11.x, stats3.x, stats11.x
    hw6/hw6submit.sh  # assignment submission script
    

  2. Begin a log file named tstats.log. This should be an ascii text file in cop3330/hw6 with the following header:

    tstats.log
    <date file created>
    <your name>
    <your CS username>
    

    This file should document all work done by date and time, including all testing and test results.

  3. Create the file tstats.h defining and implementing the class template TStats<T>. Be sure to make log entries for all work.

  4. Test your implementation using the supplied client program test.cpp. There should be 11 versions of test.cpp, one for each numerical type listed in the program header documentation, named as in the distributed makefile. Again be sure to make log entries appropriately.

  5. Create two more client programs statclient3.cpp and statclient11.cpp that duplicate the behavior of the distributed executable area51/stats_i.x exactly; these differ only in the internal numerical type: "3" = int and "11" = long double. Don't forget the log.

  6. Turn in the files tstats.h and tstats.log. using the hw6submit.sh submit script.

    Warning: Submit scripts do not work on the program and linprog servers. Use shell.cs.fsu.edu to submit projects. If you do not receive two confirmations, the second with the contents of your project, there has been a malfunction.

Code Requirements and Specifications

  1. Be sure your code conforms to the standards in C++ Style (available also through the Course Organizer).

  2. Be sure that you have tested your code for syntax errors with the supplied test harness as well as your own test program, using the supplied makefile with warning flags set. All warnings should be eliminated.

  3. Be sure that you have tested your code for both logic errors with the supplied test harness as well as your own test program.

  4. Be sure that your executable stats.x performs exactly like the distrubuted executables in area51.