Computer Science 151
Summer 2001
Syllabus
















CS 151  --  DSH 141  --  MTWR 11:00am-12:15pm
http://www.unm.edu/~cs151/stoffer
 
 
Instructor:  Shawn Stoffer
Office:  FEC 327
Office Hours:  10:00am - 10:50am MTWR -- or by appointment
Phone #:  277-9140 ( 9am-5pm ) / 232-7692 ( Voicemail;  5pm < x < 9pm )

Prerequisites

    The course CS131 is a suggested prerequisite to this course, and if you have not taken it, you must have basic knowledge of UNIX, such as how to recieve/send email, usage of basic UNIX commands such as rm, mv, cp, and cd.
    These skills will not be taught in the course, and therefore you must come prepared with this knowledge.
You may learn more about these commands here.

Grading

    Quizzes : 10%
    Midterm & Final: 20% each (20%+20% = 40%)
    Projects: 50%

    Quizzes and Tests will be made up of material from the lecture, and while the book will contain supplementary material, these exams will not be taken entirely from the book.
    Projects will consist of a programming assignment which will test the skills learned up to this point.  Each project will be expected to be tested and debugged in the time given.  There will be approximately 5 or 6 projects, though will be given as time allows.  They will consist of a problem which may be solved in one to one and a half weeks, and may take as much as a week to grade.  The projects will become successively more difficult.  Do not wait on these projects, as they will be due very quickly considering that this is during the summer semester, which naturally moves at a much faster rate.
    You must turn in your programs at the lecture on which they are due.  There will be five late days given, for the semester, so you must use them wisely, as if you use up all five in advance, you may not turn in another late paper the entire semester.  Turning in your program will consist of turning in a printout of your program's code.
    Your programs must run to be given any credit, all grades will be first based on whether the code works, and after that is determined, the code will be graded on such things as style, readability, efficiency, and functionality.  Programs that go above and beyond what is required will recieve higher grades, provided they meet ALL of the above criteria.  There will be no extra credit given on programming assignments.

Attendence

The UNM catalog states that attendance at class is required.

    As I do not teach directly from the book, attending lectures is necessary.  While it is possible to only read the book, take test, and do the projects, this is not reccommended, and is a bad idea.  Often times questions from other students, answered in the first part of every class, may be important, and if the question is interesting, it may show up on tests.  Further, I may cover material not covered in the book, and while I will go over the material in class in sufficient detail, I may not post notes on the web about that material.
    I will post what notes I feel are necessary, and I have time to prepare on the web, though I reserve the right not to post notes as I see fit.
    Lastly the tests and quizzes will be made up from lecture material, and may not be directly from the book, so attendence is necessary.

Academic Honesty

There are two university policies with respect to academic honesty and the use of computers. You should be familiar with both; they are contained in the Pathfinder.

Computer courses present some difficult situations for the student as to what is allowable. The guiding principle is that the work you turn in should be your own. It is acceptable to discuss the projects with other students in the class. It is also acceptable to receive a limited amount of help from another student in the class. The following are some examples of what is not acceptable: turning in work that is not your own, copying another persons work, mailing or giving your work to another person, making your files available to another person, reading another person’s files, having another person complete any portion of your project.

Cheating will result in an automatic F for the assignment and possibly the semester. If in doubt as to whether a collaboration is cheating, it is your responsibility to ask in advance.  Additionally, Cheating in serious cases may cause removal from the University.


June 4, First day of class!!
 
Week Topics Reading
1
(June 4-7)
Introduction
Computer Systems
Basic I/O
Basic Syntax / Variables / Data Types
Project #1
Chapter 1-2 (except looping)
2
(June 11-14)
Flow of Control
Functions
Chapter 7 (only expressions)
Chapters 2-3
(June 14) Quiz #1 Chapter 1-2, 7
3
(June 18-21)
Project #2
Classes
I/O Streams
Chapter 4-6
4
(June 25-28)
Classes
Flow of Control (Loops)
Midterm Review
Project #3
Chapter 6
Chapter 7
Chapter 9
(July 2) Midterm Chapters 1-7
5
(July 3)
Arrays Chapter 9
(July 4,5) No Class
6
(July 9-12)
Project #4
Arrays
Miterm - Take Two...
Searching
Sorting
Chapter 9-10
7
(July 16-19)
Strings
Multi-dimensional Arrays
Project #5
Chapter 10
(July 17) Quiz #2 Chapter 9
8
(July 23-25)
Multi-dimensional Arrays
Topics in Computer Science
Final Review
Chapter 10
(July 26) Final Chapters 1-7,9-10