BU CAS CS 111: Introduction to Computer Science I

Spring 1998

Homework Guidelines


Where and When to Turn Assignments in:

The homework assignments are due on Friday at 5 pm at the Computer Science office, room MCS 138. (More precisely, there are boxes outside room MCS 138 where assignments are to be turned in. If you do not know where the boxes are, ask someone in room MCS 138.) Assignments submitted after Friday 5 pm (even at 5:01 pm) are considered late, and will be appropriately penalized. All late submissions, independent of the reason for being late, must be timestamped.

What to Turn in:

Programming assignments must include the following:

  • A cover page with your name, ID number, course number, and assignment number on it.
  • The external documentation for each program (see below).
  • A printout of a script file (use "script" command to create it) containing:
    • A printout of the files containing your programs (use "cat" command).
    • An error-and-warning-free compilation of each program (use "gcc" instead of "cc" to compile a program, so you can also use the flags "-ansi" and "-Wall", as in:
            gcc -ansi -Wall prog.c
      where "prog.c" is the name of the file containing your program).
    • Printouts of all test data files (if any).
    • Test runs showing that your programs produce the correct result(s).

    Programs that do not compile correctly, or that cannot produce an output will receive no credit.

    Documentation Guidelines:

    The documentation of a program is as important as the program itself. A good documentation is essential to make the program understandable to other humans. Programs without documentation will receive no credit.

    The documentation of a program will be divided into external and internal documentation. The external documentation should contain the following:

  • The type of input the program expects.
  • The type of output the program produces.
  • Which error messages the program produces, and in which cases.
  • Which problem does the program solve, and what method(s) is used to solve the problem.
  • Which parts the program consists of, what is the purpose of each part.

    Internal documentation refers to the comments included in your program. These comments should consists of at least the following:

  • A program header containing the name of the author, login name, assignment number and date.
  • A program description that consists of a brief description of the problem and the method used to solve it.
  • A brief description of each major part of the program. This includes things like functions and data structures. Function descriptions should explain the use of each of the parameters and should also say what is the output of the function.
  • A brief explanation of the use of each variable.

    Your code should be indented in such a way that the control structure is clear. You should also use comments for the same purpose.


  • Elena Machkasova
    Created: 1996.09.05
    Modified: 1998.01.22