Fundamentals of Computer Science II

CSSE 152 – Spring 2009

 

Time and Location: 

MW 11:00-12:05 pm (Engr 305)

T TH 11:00-12:05pm (Piggot 207)

 

Instructor:                  

Dr. R. Roshandel

Office:                          

Engr 507

Office Phone:            

206-296-5512  

Email:                         

roshanak@seattleu.edu

Office Hours:             

1:00-2:00 pm M,T,W,TH

 

10:00-11:30 am F

                                      

Also by appointment

 

Note: These office hours are dedicated times to help you with course material. I am always available to answer your questions in person or via email. Moreover, I have an open door policy and you may stop by anytime.

 

Programming Assignments:

·         PA 1     (due April 16th, 2009)

·         PA 2     (due April 30th, 2009)

·         PA 3     (due May 11th, 2009)

·         PA 4     (due May 25th, 2009)

·         PA 5     (due June 5th, 2009)

 

Links

Tower of Hanoi

 

 

Tentative Schedule

 

Week

Topics

Readings (textbook)

Programming Assignments

W 1

March 30

Review

Intro to ADT and classes

 

 

W2

April 6-9

Classes (cont)

13.1-13.16 (except Pointers to Objects)

 

 

W3

April 13-16

Classes (cont)

Pointers (cont)

9.1-9.10, 11.9 (now do Pointers to Objects)

PA 1 due (April 16, 2009 – midnight)

W4

April 20-23

Exam 1

More on pointers and classes

 

 

W5

April 27-30

More on pointers and classes

Pre and post conditions

17.1-17.4

PA 2 preliminary design due (April 28th in class)

PA 2 due (April 30, 2009 – midnight)

W6

May 4-7

Linked Lists

18.1-18.6

 

W7

May 11-14

Stacks and Queues

Exam Review

19.1-19.10

PA 3 due

W8

May 18-21

Intro to recursion

Divide and conquer with recursion

Exam 2 (Wednesday May 20, 2009)

 

 

W9

May 25-28

Recursion and backtracking

Binary Search Tree

20.1-20.2

PA 4 due

W10

June 1-4

Binary Search Tree (cont)

 

 

Final Exam

June 9

Tuesday June 9, 2009 10-11:50 PM

 

 

 

 

 

Course Description:

Continuation of the introduction to the fundamentals of computer science, including recursion, linked lists, abstract data types (ADTs) (such as stacks, queues, linked lists and binary trees) and function overloading.

Pre-requisite: CSSE 151 (grade of C or higher)

 

Textbook:      

Starting Out with C++, Tony Gaddis (6th edition), Addison Wesley, 2008.

ISBN-10: 0321545885             ISBN-13: 978-0321545886

 

Course Objectives:

At the end of this course, the student should be able to:

·      Write 10-15 pages of code using top-down design, employing multiple functions, classes, pointers, and dynamic memory.

·      Distinguish the difference between the implementation and interface of an abstract data type.

·      Write code to manipulate (construct, insert, delete, and search) a linked list.

·      Define and use stacks, queues, and binary trees appropriately.

·      Identify when to use recursion and implement it correctly.

 

Class Website

The class website can be found at http://fac-staff.seattleu.edu/roshanak/web/teaching/s09/csse152/index.html.

 

Grading:        

 

·         Labs/in-class activities                  

10 %

·         Programming Assignments           

20 %

·         Exam 1                                          

20 %

·         Exam 2                                          

20 %

·         Exam 3                                          

30 %  (must get 72% or higher)

     

The instructor has the right to include additional graded activities as necessary.

 

Exams

All exams will be closed book and closed notes. Failure to appear for an exam will result in a score of zero for that test. Makeup tests will be given only in extraordinary circumstances, at the discretion of the instructor.  Makeup tests may be oral. The final exam is cumulative and a score of 72% or higher is required on the final exam to be granted a grade of C or better for this class.

The grading scale varies based for different exams. Letter grades will only be assigned to the final grade using the following breakdown:

·      90% or more:         A- or better

·      80% or more:         B- or better

·      72% or more:         C or better

 

Labs

Attendance in lab is required. Most labs will consist of a small programming exercise related to the topic of the week. All graded lab assignments are due at 10:45 am the next day. Each student must complete the lab assignment individually but may work with other students during the lab session.

Each lab must be submitted electronically. Instructions will be given along with your lab assignment.

 

Programming Assignments

There will be 5 programming assignments and they are due by 10:45 am on the due date. No late submission will be accepted. Grading criteria for the programming assignment will be distributed with the first assignment.  Programming assignments are individual assignments and no collaboration is allowed. If you have questions or doubts about the assignment, ask the instructor. Please refer to the university academic honesty policy.

 

Electronic Submission Policy

Labs and programming assignments must be submitted electronically. You may submit an assignment multiple times but only the last submission will be graded as previous submissions are overwritten. An assignment will only be graded once.

 

Late Homework Policy

No late lab and programming assignment will be accepted. It is crucial that you start working on your assignment early.

 

Attendance   

Students are responsible for all material presented in class. Pop quizzes will be given periodically. Therefore, attendance is recommended.

 

Exam Policy

All exams will be closed book and closed notes. Use of calculators, PDAs, cell phones, laptops, and other electronic devices is not permitted during the exam. Failure to appear for Exams 1 and 2 will result in a zero for that exam. Failure to appear at the final will result in a failing grade for the entire course. The final exam is cumulative and you need to receive a grade C or better in the final exam, in order to pass the course.

Makeup exams will only be given in extraordinary circumstances and may be given in oral form at the discretion of the instructor. 

 

Academic Honesty Policy

Plagiarism is the unacknowledged use of the work or intellectual property of other persons, published or unpublished, presented as one’s own work. All students are expected to work on all individual assignments independently. Collaboration on individual assignments is considered cheating and will be penalized accordingly. Other examples of behavior that is not tolerated in this class include copying all or part of someone else’s work and submitting it as your own, sharing your assignment solution with other students in the class, consulting with another student during an exam, and copying text from published literature (e.g., books other than the textbook) without proper attribution. Use of external sources such as open source material or the Internet must be approved by the instructor and must be cited before submitting the assignment.

You may use class material without citation. Class material include information (examples, code) presented in class, discussed during the office hours, textbook material, lecture notes, or other information provided by the instructor.

If you have questions about what is allowed, please discuss it with the instructor. All students are responsible for reading and following the Seattle University Academic Honesty Policy. Students who violate University standards of academic honesty are subject to disciplinary sanctions, including failure in the course and suspension from the University.

 

Disability Policy

If you have, or think you may have, a disability (including an ‘invisible disability’ such as a learning disability, a chronic health problem, or a mental health condition) that interferes with your performance as a student in this class, you are encouraged to arrange support services and/or accommodations through Disabilities Services staff in the Learning Center, Loyola 100, (206) 296-5740. Disability-based adjustments to course expectations can be arranged only through this process.

 

List of Topics and Readings

Classes                                    Chapters 13, 14

Pointers                       Chapters 9, 11.9-11.10

Linked Lists                  Chapter 17

Stacks & Queues         Chapter 18

Recursion                    Chapter 19

Binary Trees                Chapter20

 

Important Dates

 

March 30 (Mon)

Classes Begin

April 05 (Sun)

Last Day to Register, Add/Drop or Change Grading   Options

May 8 (Fri)

Last Day to Withdraw

May 25 (Mon)

No classes – Memorial Day

June 8 (Mon)

Last Day of Class

 

Tentative Exam Schedule (Subject to Change – refer to class website for updates)

 

Exam 1

April 21, 2009

Exam 2

May 13, 2009

Exam 3

Tuesday June 9, 2009 10-11:50 PM

There will be at least five programming assignment due approximately every other week throughout the quarter.

This is a personal WEB site developed and maintained by an individual and not by Seattle University. The content and link(s) provided on this site do not represent or reflect the view(s) of Seattle University. The individual who authored this site is solely responsible for the site's content. This site and its author are subject to applicable University policies including the Computer Acceptable Use Policy (www.seattleu.edu/policies).