Homework Submission Guidelines
CSC 161 - Imperative Problem Solving - Weinman
- Summary:
- We provide details on the policies for submitting individual
homework problems.
Contents
english
1 Collaboration2 Header3 References and Academic Honesty Certification4 Format5 Testing6 Submission
1 Collaboration
Each homework problem must be done individually, without
consulting classmates, mentors, tutors, or other individuals (except
the instructor). Thus, discussions must respect the
course
academic honesty policy and guidelines on
allowable
help from peer educators.
2 Header
The very beginning of each and every homework
file (including
references and testing files) should contain the following identifying
line. (You would be surprised how often the wrong files are submitted;
this makes it easier for all to identify.) Even if the file is text
commentary, the same (C-style comment) format must be used.
-
/***********************************************************************
* Homework: Title
***********************************************************************/
The title must
exactly match that give on the corresponding
web page.
DO NOT INCLUDE YOUR NAME. Because your program will be graded
anonymously, you must not place your name in any file except the references/honesty
file, below.
3 References and Academic Honesty Certification
Each and every homework
assignment must include a single
file,
references.txt, with the following information (sources,
help, certification) completed.
-
Academic honesty certification:
Written/online sources used:
[include textbook(s), CSC 161 labs or readings;
use complete citations for Web or other written sources;
write none if no sources used]
Help obtained
[indicate names of instructor, class mentors
or evening tutors, consulted according to class policy;
write none if none of these sources used]
My initials below confirm that the above list of sources
is complete AND that I have not talked to anyone else
(e.g., CSC 161 students) about the solution to this problem
Initials: ABC
Failure to submit a references file will result in a score of zero
for the assignment.
4 Format
All submission files must be in plain text files (
note: source
code is a text file), rather than special word processing or other
document formats (e.g.,
.doc,
.docx,
.odp,
.pdf).
- References
- To facilitate blind grading, references and academic
honesty must be included in a separate file, references.txt,
not included within any program files.
- Code
- A complete program should usually be given as a single entity
(file), unless otherwise specified in the instructions.
- Commentary
- Commentary regarding testing must be given in a separate
file, tests.txt, not included within the complete program.
(Note: Opening a file in Emacs with a .txt extension
is generally a good way to author such a file, as Emacs will automatically
wrap lines sensibly.) The commentary should describe how one knows
a program is correct (cf. 5). As with any writing, this
commentary should be logically structured and carefully written.
Use a plain text file; files submitted in any other format
will receive no credit.
5 Testing
Homework problems require more formal testing as
outlined
in the rubric. Whereas these problems apply problem solving in C
to non-robot-based problems, solutions must be tested systematically,
and the results of the tests collected and submitted.
All code must be tested; commentary must address the basic question
of how you know the code is correct. Commentary that simply repeats
the logic of the program does not address correctness. If the logic
in a program is faulty, simply stating the logic again does not make
it correct.
Evidence based on testing must be described.
- What circumstances can arise in the problem?
- What test cases have been devised to check those circumstances?
- What results does the program produce for those test cases?
- Are the results correct? How do you know?
For example, program output should be copied into your commentary.
In order to analyze the output, be sure to state clearly what input
was used for each test. To generate a transcript of compilation and
relevant test or demonstration runs for inclusion in your work, use
the
script command and paste the resulting file at the end
of your commentary. For example
-
weinman@noyce:homework$ script captured.txt
Script started, file is captured.txt
weinman@noyce:homework$ export PS1="$ "
$ make homework
clang -Wall -std=c11 -I/home/walker/MyroC/include -L/home/walker/MyroC/lib -lm -lMyroC -lbluetooth -ljpeg homework.c -o homework
$ ./homework
...
$ exit
Script done, file is captured.txt
weinman@noyce:homework$
The second line (using
export) removes your username from
the prompt. When you copy
captured.txt into your commentary,
be sure to omit the line with your username (to preserve your anonymity).
IMPORTANT NOTE: The
clang command must appear in
your trancript to indicate the compilation. (As shown above,
make
can issue the
clang compilation for you.) It must not say
"
up to date", which does not show the compilation. If
that appears, remove the executable or any other dependencies (e.g.,
"
rm ./homework" in the example above) and re-attempt
to
make.
IMPORTANT WARNING: Be sure you do not accidentally give the
name of your program file (e.g.,
homework.c) as the argument
to
script. If you do, it will overwrite your file and you
will likely have to start over completely.
IMPORTANT REMINDER: Including
script-based transcripts
(or simply pasting text copied directly from the terminal window)
are subject to the syllbaus academic honesty policy (based on the
student handbook):
Any program results or output must be faithfully recorded, not forged.
(A thoughtful explanation of unexpected behavior can often be a worthwhile
submission and is much better than the alternative.)
6 Submission
Submit your files to the corresponding assignment on Gradescope by
the deadline. Attach each file containing your answers (cf.
4)
to upload.
Acknowledgments
This is a derivative work of
Detailed
Coursework Instructions by Henry Walker; used under a CC-BY-NC-SA
4.0 license.