Introduction to Computer Science for Majors I James Tam Return to the course web page

CPSC 231: Academic Misconduct (Cheating)

Assignments must reflect individual work.  Each student must demonstrate that he or she can complete the assignment on their own so you cannot copy the work of other students nor can students work in groups.  Any suspected cases of cheating must be forwarded by me onto the Department Head, which may be passed on further to the Office of the Dean of Science and Student Services resulting in penalties such as failing the course or even expulsion from the university.

A few questions and answers to help clarify things:

Q: What constitutes cheating in this course? 
A: It is probably similar to what you have seen in other courses.  Cheating has occurred if you hand in someone else's work as if it were your own (without crediting the other person).   Furthermore if a student knowingly provides his or her graded work to another student  then both students are guilty of academic misconduct (the first student helped the second student to cheat).


Q: What happens if you include someone else's code and you do credit the other person properly (this doesn't apply to your classmates, recall that you are not to see the assignment code of other students) e.g., You use the code from a text book and you include the following citation:  The function (listed below) for opening and reading from a file was taken in it's entirety from the book "The Tao of file systems" by James Tam
A: This will not constitute cheating because you clearly indicated that the work was not your own but since someone else did the work for that section of your assignment you won't get credit for that part of the assignment. You could get marks for the other parts of the assignment that you wrote yourself. The crediting of other's people work must be very specific and clear because your marker needs to be able to unambiguously determine which parts of your program did you complete and which parts came from an outside source. It's probably best to directly document each block of external program code that you've used.
 

Q: What is the difference between getting help from someone vs. cheating?
A: If you describe the process to someone using plain English then you should be okay because then the person still must figure out how to implement your generic ideas in the appropriate programming language used for the course (both of you are handing in separate submissions).   If you simply give your code to a friend then this is NOT okay, even if your friend says that he or she will only use your solution only as a *guide* to figure out the answer and *promises* that he or she won't just copy it into their own program. 

Okay Not okay
To display the contents of a two-dimensional array onscreen you will need two nested loops and two loop controls: one to keep track of the row that is currently being displayed and one to track the current column value.   Start by initializing the outer loop to the value of the lowest row value and the inner loop to the value of the lowest column value and display that array element.  The inner loop will travel along the row from the lowest column value to the highest column value.  After the last column has been reached, the outer loop value increases by one which allows the inner loop to traverse the second  row.  The outer loop will repeat until all the rows have been traversed.  
for (r = 0; r <= 4; r++)
    for (c = 0; c <= 4; c++)
         sys.stdout.write(aGrid[r][c])
    print()
 
 
 

Q: The code that you gave us in lecture would be really handy for our assignments, are we allowed to use it and get credit for the work?
A: Yes, unless you are told otherwise you can make use of my sample code and get credit.  Just make sure that you indicate where you got it from in your program documentation.  Don't just include it in your code without citing the source (in this case it's me) because you will be claiming that this work is yours when it isn't so you will be guilty of academic misconduct.

This list of questions only includes things that I thought up as I writing the assignment specifications, if you ever unsure if a particular situation constitutes cheating or not then it is up to you to ask me. For you reference here is the brief discussion on academic misconduct provide in the university calendar.