Course Description
The first two
weeks of the course will be devoted to assessing the overall background of
the class and reviewing of the programming concepts and techniques learned
in CS 150. After this
introductory period, topics listed in the
Topics
section below will be covered using lectures, labs, and hands-on exercises.
During the class you are encouraged to bring up questions and
participate in discussions throughout the semester. In the last part of the
course, you will work with partners on a couple of programming
projects.
Course Objectives
At the conclusion of the CS160
course students will demonstrate their ability to:
-
Implement
functions with greater ease
-
Write
programs of moderate size in C++, using algorithms chosen from several
alternate approaches
-
Use
top-down, step-wise refinement technique in structured programming
methodology to solve problems.
-
Show
understanding of abstraction in programming
-
Have an
understanding of the concepts of classes, objects, attributes, and
methods which are the basic elements of object-oriented programming
-
Differentiate strengths and weaknesses of different search and sort
algorithms
-
Cooperate
with partners in developing software systems
Return to: [Top of Page]
Instructor
Bro. Robert K. Maruyama, S.M.
email: [email protected]
office: Kieffer 14
tel: 739-4605
Text Book
Starting
out with C++ Early Objects (7th edition), Tony Gaddis, et al. ISBN-13: 978 0-13-607774-9
Topics
The following topics will be covered in this course.
1. Review of arrays
2.
Searching and Sorting
3.
Analysis of Algorithms
4.
Pointers
5.
Classes and Object-oriented Programming
6.
Characters, Strings, and string Class
7.
File and I/O operations
8.
Recursion
9.
Polymorphism and Virtual Functions
10.
Exceptions
Requirements
The following are class requirements. Refer to the section on a href="#grading">Grading for further details.
·
Quizzes
·
Tests
·
Programming
Assignments (in Lab class)
·
Project
Assignments (PA)
·
Class
Attendance
·
Final Exam
Return to: [Top of Page]
Lab Exercises
The
main goals in this class is to understand how programs are designed and
become proficient in implemented them. The best way for you to achieve these
goals is
to write programs while studying examples of well written code. You
will be responsible for 10 to 13 programming assignments which are to be
completed in the accompanying lab class. They will be based on the examples
explained in the class. The deadline for each assignment, which will be
available from the class Schedule page on the Web, will be due at the end of
the week in which it is assigned. The
details for the deadline and submission of the assignments will be announced
in the class.
Late Submissions
Any exercise or project turned in after the deadline is considered late. Assignments which are late will incur penalties at the following rates.
- 1-6 days, 30%
- 1-2 weeks, 50%
- Over 2 weeks, 70%
Thus, a 10-pt
project which is late by 1 day may receive a maximum of 7 pts; a 20-pt lab,
a maximum of 14 pts. It is always better to submit a late assignment, no
matter how late.
If you foresee
a valid reason that could cause you to turn in your assignments late--e.g.,
TDY, special work assignments, hospitalization, etc.--you must get
permission for special arrangements before the programming assignment is
due.
Test
There are a number of tests scheduled for the term, in addition to the final exam. Their dates are indicated in the Class Schedule. (The format for the final exam will be announced later in the term.) In general, there will be no make-up tests or quizzes. Special cases will be considered when there are valid reasons, but arrangements must be made before the test or quiz dates.
Return to: [Top of Page]
USB Flash Drive
All work in the class using the computer needs to be saved on a USB flash drive (thumb drive, pen drive, etc.). You will need a dedicated USB drive for the class.
Eating and Drinking in the Classroom
As a general rule on campus, eating and drinking in the classroom are not allowed, especially in the computer labs.
Academic Honesty
The University Student Handbook defines plagiarism as follows: "Plagiarism is the offering of another as one's own. Plagiarism is a serious offense and may include, but is not limited to, the following:
- Complete or partial copying directly from a published or unpublished source without proper acknowledgement to the author. Minor changes in wording or ayntax are not sufficient to avoid charges of plagiarism. Proper acknowledgment of the source of a text is always mandatory.
- Paraphrasing the work of another without proper author acknowledgment.
- Submitting as one's own original work (however freely given or purchased) the original exam, research paper, manuscript, report, computer file, or other assignment that has been prepared by another individual."
Each student is expected to complete his or her own assignments. Although modern work environments require extensive teamwork, one of the main goals in this class is that each student learn the basic skills in computer usage through individual practicing. You are encouraged to consult each other in your class work. But you must distinguish between consulting your friends and discussing problems with them from copying other people's work.
Whatever you submit for grading must be your own work. The penalty for copying in tests, project assignments, or lab exercises is, for the first offense, a grade of 0 for all parties involved; for the second offense, an F for the course.
Attendance
Regular class attendance is important since you are responsible for all materials covered in the class. Attendance will be taken at all class sessions. Generally speaking, there will be no make-up tests or quizzes, except in cases of excused absences for which prior arrangements are required . Be sure to inform the instructor when you foresee that you cannot be present for a scheduled test. A missed test receives a grade of 0.
Return to: [Top of Page]
Grading
The semester grade will be based on the following elements of your course
responsibilities: (Points in various categories and total points are subject
to change.)
Quizzes | 5 x 14 = 70 |
Tests | 100 x 2 = 200 |
Lab Exercises | 20 x 13 = 260 |
Attendance | 50 |
Finals | 100 |
Total | *680 |
*These numbers may change
depending on various circumstances.
The following guidelines will
be used in determining the final grades.
A: >= 90%; B: >= 80%; C: >= 70%; D: >= 60%; F: < 60%
Return to: [Top of Page]
Getting Help
For "quick" questions the email is the simplest way to contact me. Feel free to drop in at my office during office hours or to set up an appointments outside those hours. It would be better to let me know when you are coming to insure that I will be in my office when you come.
Return to: [Top of Page]