COMP1917 12s2 |
Course Outline COMP1917 Computing 1 Teaching Period 2, 2012 |
Computing 1 |
Staff Name | Role | Phone | |
Alan Blair | Lecturer-In-Charge | blair "at" cse.unsw.edu.au | 9385-7131 |
Consultation Times: TBA
Course Code/Title: | COMP1917 Computing 1 |
Units of Credit: | 6 |
Course WebSite: |
http://www.cse.unsw.edu.au/~cs1917/12s2 |
Handbook Entry: |
www.handbook.unsw.edu.au/undergraduate/courses/2012/COMP1917.html |
Topics covered include:
COMP1917 is designed for CSE students, and for any student with a keen interest in computing, regardless of their degree program. COMP1911 and COMP1921 cover similar material to COMP1917 and (part of) COMP1927, but move at a more gentle pace.
Switching between COMP1911 and COMP1917 is possible up to the end of Week 2.
Neither of them assume any prior knowledge of computing,
so you should make the choice based on your level of interest and aptitude,
rather than on previous programming experience.
If you are thinking of switching,
the best advice is to look through the course notes, check out the material
on the course Web sites and, if necessary, discuss with the Lecturers, the
School office or your Program Coordinator.
Students are required to attend 3 hours of Lecture per week,
plus a 1-hour Tutorial and a 2-hour Laboratory class.
There will also be three 1-hour Prac Exams during the session.
Tutorials give you a chance to clarify ideas mentioned in lectures and
to practice your problem-solving skills in a small (and hopefully more
personal) class with the assistance of a tutor. You should make sure
that you use them effectively by examining the material to be covered
before each week's tutorial, asking questions, offering
suggestions and generally participating. The tutorial questions
will be posted on the Web in the week before each tute. Tutorials are
one hour long and they are scheduled to start in Week 2 of session.
There will often be a couple of extra questions, which are not
covered during the tutorial. You may use these for practice or
revision.
Students will also be required to make a brief presentation,
in pairs, at the beginning of one tutorial during the session.
Laboratory classes give you a chance to practice programming
skills on small examples, which have been chosen to
highlight particular aspects of programming.
Your tutor will be present in your
Lab class to answer any questions you may have.
All Lab exercises must be shown to your tutor during your
scheduled lab class. The Lab exercises will be available during the
session via the course's Web page. Students are advised not
to fall behind in their laboratory work.
In order to get a mark for a lab exercise you must show your tutor
a completed or partially completed solution before the end of
your scheduled lab class in the week that the exercise is scheduled.
If you cannot complete the exercise by the end of the lab you may
complete it in your own time and submit it using the give
command by midnight on the following Sunday.
Your tutor will then mark it at the very beginning of
the next scheduled lab class.
Note:
To gain a mark you must at the very least:
show your tutor a partial solution; and,
submit a completed solution using give by midnight the
following Sunday.
After that time, you will not receive a mark for
that particular lab exercise.
If you are unable to attend your scheduled lab class due to illness
or misadventure, then you should apply for special consideration
and an extension may be granted.
Note:
You can only have your lab work marked during your scheduled lab class.
It is not possible to have your work marked in another class.
To make sure that you can complete the work in your scheduled lab
class, you should make an effort to prepare the work beforehand. You
can make use of a terminal in a laboratory simply by booking a time-slot.
You have sufficient bookable Lab time available each week to allow you to
prepare your lab exercises; make good use of it.
There is no scheduled Lab class in Week 1.
However, there is a Laboratory exercise for you to complete
in your own time during Week 1 (or at least, prior to your Week 2 Lab class).
All submitted programs (Lab exercises and Assignments) must adhere to the
Course Style Guide.
Assignments give you the chance to practice what you have learned on
relatively large problems (compared to the small exercises in the Lab
classes). Assignments are a very important part of this course,
therefore it is essential that you attempt them yourself.
To pass the course, you must achieve:
The document
"Important
Advice for Students"
states the supplementary assessment policy for the School of CSE.
Please take the time to read it carefully.
If you are granted a Supplementary Examination, then it is most
likely to be held in December. If you think that you may be eligible for
a supplementary exam, then make sure you are available at that
time. It is your responsibility to check at the School Office for
details of Supplementary Examinations.
All work submitted for assessment must be your own work. Lab
exercises and assignments must be completed individually. We
regard copying of assignments or lab exercises, in whole or part, as a
very serious offence.
We use plagiarism detection software to search
for suspiciously similar submissions.
Collaborative work in the form of "think tanking" is encouraged, but
students are not allowed to derive code together as a group during
such discussions. Students are also warned not to send code fragments
of the assignments or labs to each other in any form (e.g. as email or
listings). In addition, copying/purchasing of code that is available
on the Web is also not permitted. Students who are singled out during
our regular plagiarism sweep will be
dealt with according to School Policy, which provides serious penalties
particularly in the case of repeat offences:
Students are strongly advised to protect their work. Do not leave your
terminal/computer unattended, or leave listings at the printer
where others can take them.
Teaching Rationale and Strategies
Assessment
The assessable components of the course are:
Component
Mark
Programming Assignment 1
8%
Programming Assignment 2
12%
Laboratory Exercises
9% Tutorial Presentation
1% Prac Exam 1
5% Prac Exam 2
7% Prac Exam 3
8% Final Exam (Practical)
20% Final Exam (Written)
30% Total
100%
Academic Honesty and Plagiarism
http://www.cse.unsw.edu.au/people/studentoffice/policies/yellowform.html
http://www.cse.unsw.edu.au/help/doc/primer/node42.html
http://www.cse.unsw.edu.au/~chak/plagiarism/plagiarism-guide.html
Course Schedule
These are the provisional lecture times and locations:
Time | Location (tentative) |
---|---|
Tue 3-4 | Webster Th A |
Wed 10-11 | Biomed Th D |
Wed 5-6 | Biomed Th D |
The three Prac Exams will be held on Friday afternoons at 1pm. The first of these is planned for Week 6.
Here is the list of planned topics, an estimate of the week in which the topic will be presented, and the relevant chapter/section of the textbook.
Topic | Week | Chapter/Section of Moffat textbook |
1. Introduction | 1 | Chapter 1 |
2. Numbers In, Numbers Out | 1 | Chapter 2 |
3. Making Choices | 2 | Chapter 3 |
4. Loops | 2 | Chapter 4 |
5. Functions | 3 | Chapter 5 |
6. Binary and Hexadecimal | 4 | Section 13.2 |
7. Number Storage and Accuracy | 4 | Section 13.2 |
8. Characters and Arrays | 5 | Section 7.1-7.5 |
9. Pointers | 5 | Chapter 6 |
10.Strings and Files | 6 | Section 7.6-7.10, Chapter 11 |
11.Writing a Makefile | 7 | |
12.Debugging | 7 | |
13.Structures | 8 | Chapter 8 |
14.Linked Lists | 8 | Section 10.1-10.2 |
15.Stacks and Queues | 9 | Section 10.1-10.2 |
16.Binary Search Trees | 10 | Section 10.3,10.5 |
17.Memory and Stack Frames | 10 | |
18.Machine Language | 11 | |
19.Sorting and Efficiency | 12 | Section 12.1,12.6 |
20.Review | 12 |
COMP1917 Computing 1: Course NotesThese Course Notes do not necessarily cover the entire content of the course, and are meant to be used in conjunction with regular lecture attendance, tutorial and lab attendance, lab exercises, assignment work and study of the relevant sections of the textbook.
The recommended textbook for this course is:
Alistair Moffat, Programming, Problem Solving, and Abstraction with C, Pearson Educational, Australia, 2003, ISBN 1-74103-080-3.The following books might also serve as additional reference material:
Brian W. Kernighan and Dennis M. Ritchie, The C Programming Language, 2nd edition, Prentice Hall, USA, 1988, ISBN 0-13-110370-9.
Jeri R. Hanly and Elliot B. Koffman, Problem Solving and Program Design in C, 4th edition, Addison Wesley, 2004, ISBN 0-321-21055-7.
H.M. Deitel, P.J. Deitel, C How To Program, 4th edition, Prentice Hall, New Jersey, 2004, ISBN 0-13-122543-X
A.S. Tanenbaum, Structured Computer Organisation, 4th edition, Prentice Hall, New Jersey, 1999. ISBN 0-13-0204358.Since for many of you this is your first time studying computing at university, you are likely to have quite a few questions about a variety of things. If you do have a question please follow the chain of enquiry below to ensure a timely response:
The School Web site has useful information that may be of help:
http://www.cse.unsw.edu.au/Particularly useful are the Unix man pages. The searchable interface allows you to find out more about various Unix commands (this assumes that you have some basic knowledge of the Unix environment):
http://www.cse.unsw.edu.au/scripts/manIf you are new to the computing laboratory and its setup, you can read about it in the Unix Primer. The Unix Primer and other useful documentation can be found at this link:
http://www.cse.unsw.edu.au/help/doc/index.htmlTake the time to explore the system. The more adventurous you are, the more you will learn and the more proficient you will get. Advice about Home Computing for COMP1917 Students can be found here:
http://www.cse.unsw.edu.au/~cs1917/12s2/homecomputing.htmlSpecific information for Mac users can be found here:
http://www.cse.unsw.edu.au/~cs1917/12s2/mac.htmlThose interested in working from home should also look into purchasing a copy of our Home Computing CD, which is available from the CSG Help Desk. To find out more, go to:
http://www.cse.unsw.edu.au/~homecomputingOne final piece of advice: if you have a problem, do not wait until Week 12 before seeking help. Problems that are dealt with early are usually quicker and easier to resolve than if they are left to the last minute.
Student feedback for this course will be obtained via electronic survey at the end of session, and will be used to make continual improvements to the course. Students are also encouraged to provide informal feedback during the session, and to let the lecturer in charge know of any problems, as soon as they arise. Suggestions will be received constructively, and every reasonable effort will be made to address them.
Good Luck!