Anne Dawson: CSCI101A_FA_SP06.htm

 

Thursday 30th March 2006, 11:22 PT, AHD

 

This document is subject to change without notice.

 

Please report any errors or omissions in this document:

 

anne.dawson@gmail.com

 

 

 

Special instructions:  For this assignment you must work alone.

 

CSCI101A Final Assignment

-------------------------

 

Specification:

-------------

 

The "Game of Life": #14, p640, 4th Ed or #15, p565, 5th Ed

 

This assignment is due at the start of class of Week 14 Class 1:

10:05am on Tuesday 4th April 2006.

 

Go to the following website for a graphic illustration of the

Game of Life:

 

http://www.bitstorm.org/gameoflife/

 

 

Select the Glider pattern (instead of Clear) as the starting pattern:

 

 

Click on the Next button to see the next pattern according to the rules:

 

 

 

IMPORTANT:

Your program should be tested using the same starting pattern (Glider).

 

 

If the program is working correctly, it should reproduce the same patterns

as shown in the animation, at every click of the Next button.

 

I suggest you use a * character to represent an occupied cell,

and a 0 character to represent an unoccupied cell.

 

 

HINTS:

 

After each display of the 2 dimensional pattern, use

 

system("Pause");

 

before applying the rules for the next pattern.

 

system("cls");

 

// clears the screen

// so that the display

// will always be in the same position

 

 

 

 

Marking Scheme

--------------

 

The following marking scheme applies:

 

Course Code:             CSCI101A

Semester:                SP06

Assignment Code:         FA

Lab Specification:      The Game of Life

Instructor Name:         Dr Anne Dawson

 

 

Student Name:

Student Number:

 

 

DESIGN

 

1.  The program has appropriate modularity i.e.               

    functions are used where it makes

    sense to use them.                                   /10

 

2.  Appropriate data types are used.                     /10

 

3.  Appropriate control structures are used

    (i.e. loops and decisions).                          /10

 

4.  The User Interface is clear and tidy.                /10

 

MAINTAINABILITY

 

5.  The program is commented appropriately - including

    programmer name, date, filename, and program

    description. Pre- and post-condition comments are

    supplied for each function.                          /10

 

6.  The program has meaningful identifiers.              /10

 

7.  The program is indented (spaced out) correctly, to

    aid the understanding of the code.                   /10

 

CORRECTNESS:

 

8.  A two-dimensional dynamic array is used.             /10

 

9.  The program runs correctly                           /10

 

10. Appropriate test data are supplied.                  /10

 

                                          % Complete:

                                               Bonus:

                                               Total:   /100

                                      

                                    Date: