(Latest Revision: 05/01/2001)
FIFTH CS 1500 SOLO PROGRAM: Laying Bricks
OBJECTIVE:
The purpose of this programming assignment is to get more
practice writing and using loops.
THE ASSIGNMENT:
Your assignment is to write a program that "makes a brick wall"
for the user.
INPUT:
The program prompts the user for a width and a number of courses. These
numbers are the width and height of the wall, measured in numbers of whole
bricks. There does not need to be any provision for partial brick widths or
heights.
OUTPUT:
The program "outputs a brick wall" having the dimensions given by the user.
Look at the
sample runs
of my solution program to see what kind of appearance the brick wall must
have.
Your output must be just like the output of the sample. In particular, your
bricks must be the same size and shape, and your walls must contain single
layers of mortar (asterisks) in the appropriate locations just as the
sample shows. Also, your walls are not allowed to have mortar anywhere on
the periphery -- the top, bottom, or sides.
THE DESIGN OF THE PROGRAM:
For this assignment, I am not giving you a structure chart to
follow. You must create your own design of this program. I am
expecting you to employ good principles of top-down design.
Substantial credit will be withheld if you do not create a
program that uses functions appropriately.
I'll discuss some things in class that I think will help you in your efforts
to design a solution to this problem.
Also, you can look at the programs
stars.cpp
and
varStars.cpp
to see C++ code with some similarities to the code you need to write.
FORM AND FORMATTING REQUIREMENTS:
Write appropriate header comments for each of your functions.
Header comments are the comments that appear at the beginning
of the function, telling what it's purpose is and what the
preconditions and postconditions are, and so forth. You may
pattern your header comments after the example code in your text
book, or you may use
this information
as your guide.
At the beginning of your program file put a header comment like
this:
/* PROGRAM Brick Wall Maker */
/*
Name: Gordon Goodguy
User Name: goodge
Course: CS 1500, Computer Programming I
Instructor: John Sarraille
Date: November 31, 2001
*/
Of course, in place of "Gordon Goodguy," you must put your own
full name. In place of "goodge" put your user (login) name. In
place of "November 31, 2001" put the date that you finished the
program. Note that the comment delimiters /* and */ are
important. They need to be placed correctly or you will get
compiler errors.
WHAT TO TURN IN:
Before midnight on the due date, e-mail the following two items
to me:
- A copy of the source code, properly documented.
- A filtered script showing an appropriate number of
test runs with different kinds of input.
My e-mail address is:
john@ishi.csustan.edu
Please use the following subject lines exactly
for the e-mails:
For the source file: CS1500_Solo5_Source
and for the script file: CS1500_Solo5_Script.
Note that there are no spaces in these subject lines. If you
like, you can copy and paste the subject lines right from this
document.
Thanks! Your use of these subject lines will
really be a big help to me when I try to sort through the
perhaps hundred e-mail messages that will be in my electronic
mailbox!
WHEN IS THIS ASSIGNMENT DUE?
Look for the due date in
the class schedule.
(It's at the top level of the class directory.)