Syllabus
C++ Programming

C++ Programming

COSC-1320

Spring 2012
01/17/2012 - 05/13/2012

Course Information

Section 003
Lecture
MW 12:50 - 14:35
RRC2 2220.00
Ron Bass

Office Hours

No office hours have been entered for this term

Course Description and Rationale

Course Description:  This course is an introduction to the C++ programming language and its subset, the C programming language.  Program structure, block, storage types, console and file I/O, functions, arrays, strings, pointers, call-by-reference, call-by-value, and dynamic memory allocation will be discussed.  The concept and useof classes will be covered in some detail.  The differences between C++ and C will also be discussed. 

Pre-requisite:  COSC 1315 or departmental approval

Instructional Methodology:  This course will have both lecture and lab each week.  If the students are unable to finish the assigned lab work within the lab time, they will need to visit the CIS open labs. 

Course Rationale:  This course is designed to teach students the C++ programming language and introductory and intermediate programming concepts with examples and applications using the C++ language.  The course builds and extends topics covered in the prerequisite course, COSC 1315 and prepares students for more advanced programming courses such as ITSE 2431 (Advanced C++ Programming) and COSC 2415 (Data Structures) as well as for entry level programming employment.  The course is required for an Associate Degree in several Computer Information Systems and Computer Science degree areas.

Course Subjects

Course Schedule

Section Schedule (16-week session)

Week

Chapter

Topics

1

1-5

Review of C++ Fundamentals

2

6

Functions

3-4

7

Intro. to Classes and Objects

5

 

Exam 1

6-8

8-9

Arrays

9

10

Pointers

10

 

Exam 2

11-13

11

Adv. Classes and Objects

  14

12

Chars, C Strings, & Strings

15

13

Advanced File  and I/O

16

 

Exam 3

Course Requirements

The exams and programming assignments* due dates for the Spring Semester (2012) are:

 

Prog. #

All Assignments are from the textbook.

Date

Problem/Page

1

01/25

13/384

2

02/01

1&2/477

3

02/08

9/479

4

02/13

14/481

EXAM 1

                02/15

5

02/27

14/572&573

6

03/05

12/618

7

03/19

1&2/675

8

03/26

7/676

EXAM 2

               03/28

9

04/09

2&3/768

10

04/18

7/769&770

11

04/30

14/826

12

05/07

12&13/898

EXAM 3

                05/09

 

* Note:  This table reflects the assignment # and page numbers for 7th edition of the textbook.

Student Learning Outcomes/Learning Objectives

Course Objectives/Learning Outcomes:

  1. Demonstrate a thorough understanding of modular programming by designing programs that require the use of programmer-defined functions.
  2. Demonstrate a thorough understanding of arrays by designing and implementing programs that search and sort arrays.
  3. Demonstrate a thorough understanding of the object-oriented programming concepts of encapsulation, data abstraction and composition by designing and implementing classes including the use of overloaded functions and constructors.
  4. Demonstrate a thorough understanding of the concept of pointers and dynamic memory allocation by designing and implementing programs using pointers and dynamic memory allocation.
  5. Demonstrate a thorough understanding of the implementation of programmer-defined functions and classes by writing code, performing unit testing and debugging of multiple complex programs.                                                                
  6. Demonstrate good documentation style in all of the programs written in this course.
  7. Demonstrate proficiency in implementing data validation code, performing unit testing, and developing test plans while implementing robust solutions to the assignments in this course.
  8. Demonstrate a thorough understanding of stream input/output for both console and files.
  9. Demonstrate an understanding of the differences between C and C++ in the areas of strings, pass by reference/passing pointers, and structs by designing and implementing programs that use C strings, C++ strings, C language structs and classes.

 

SCANS (Secretary’s Commission on Achieving Necessary Skills):

Refer to http://www/austincc.edu/cit/courses/scans.pdf for a complete definition and explanation of SCANS.  The following list summarizes the SCANS competencies addressed in this particular course:

 

RESOURCES

1.1 Manages Time

INTERPERSONAL

INFORMATION

3.3 Uses Computers to Process Information

SYSTEMS

 

TECHNOLOGY

5.2 Applies Technology to Task

 

BASIC SKILLS

6.3 Arithmetic

6.5 Listening

THINKING SKILLS

7.5 Knowing How to Learn

 

PERSONAL SKILLS

 

Readings

Approved Course Text:  Starting Out with C++, Early Objects, 6th Edition,Gaddis, Walters, Muganda, Addison Wesley, 2008.  (ISBN-13:  978-0-321-51238-3 MHID: 0-321-51238-3)

Course/Class Policies

Course/Class Policies:

Grade Policy:

Grade will be assigned based both on concepts and practical application. Exams, quizzes, and lab projects will be a part of the grade.  An overall grade will be assigned on the following grading scale:

90%  - 100%         A

80%  -  89%          B

70%  -  79%          C

60%  -  69%          D

0%    -  59%          F

Section Grading:

12 Programs @ 2 percent each

5 Special Assignments @ 2 percent each

3 Exams @ 22 percent each
Total = 100 percent

Academic Integrity

A student is expected to complete his or her own projects and tests.  Students are responsible for observing the policy on academic integrity as described in the current ACC Student Handbook, under “Student Discipline Policy, Section C”.

The penalty accessed will be in accordance with the current ACC Student Handbook policy.  See http://www.austincc.edu/handbook/policies4.php for more information.

For this course, the penalty for scholastic dishonesty is a grade of ‘F’ for the course.


Incomplete

A student may receive a temporary grade of “I” (Incomplete) at the end of the semester only if ALL of the following conditions are satisfied:

1.      The student is unable to complete the course during the semester due to circumstances beyond their control.

2.      The student must have earned at least half of the grade points needed for a “C” by the end of the semester.

3.      The request for the grade must be made in person at the instructor’s office and necessary documents completed.

4.      To remove an “I”, the student must complete the course by two weeks before the end of the following semester.  Failure to do so will result in the grade automatically reverting to an “F”.

Freedom of Expression Policy

It is expected that faculty and students will respect the views of others when expressed in classroom discussions.

Tutoring

Free tutoring is provided for this course. For schedules and details please refer to http:://www.austincc.edu/cit

Attendance / Withdrawal

Students are expected to attend classes and will be held responsible for all material covered in class.  Regular attendance helps ensure satisfactorily progression towards completion of the course. 

It is the student’s responsibility to complete a Withdrawal Form in the Admissions Office if they wish to withdraw from this class.  The instructor may withdraw students from this class if their absences exceed 10% of the total number of class meetings or if the student fails to attempt 4 graded assignments by the last date to receive credit.  The last date to withdraw for this semester is [insert date here].  It is not the responsibility of the instructor to withdraw the students from their class even though the instructor has the prerogative to do so under the above listed circumstances.

ALERT:  New state law for new students. No more than six course withdrawals throughout your undergraduate education, regardless of how many colleges you attend.  Students who entered college before fall 2007 are not affected.  Ask a counselor for details.

Student Files – Privacy

The information that a student stores in his/her student volume in the Computer Studies Labs may be viewed by their instructor for educational and academic reasons.

Students with Disabilities

Each ACC campus offers support services for students with documented physical or psychological disabilities.  Students with disabilities must request reasonable accommodations through the Office for Students with Disabilities on the campus where they expect to take the majority of their classes.  Students are encouraged to make this request three weeks before the start of the semester.  (Refer to the current ACC Student Handbook).

Communication

The ACC online Blackboard system http://acconline.austincc.edu and the ACCmail accounts will be used as the official communication system during this semester.  Lecture notes, handouts, changes to course schedule or assignments and your grades will be posted on Blackboard and all email communication will be via the ACCmail accounts.  All students are expected to check both Blackboard and their ACCmail accounts on a regular basis.  For information on how to log onto Blackboard 8.0 and ACCmail please visit the following sites: http://irt.austincc.edu/blackboard/stlogin.html http://www.austincc.edu/google/.

A brief orientation will be provided during the first class laboratory period.

Course Subjects