Course Description
Intended for computer science majors, this is an introductory course in computer science and problem
solving. Students will learn techniques in algorithm development, step-wise refinement, top-down design,
and basic principles of software engineering. The course will cover the basics of the C/C++ language:
variables, types, expressions, control structures, method definition, parameters, arrays, strings, and data
abstraction. Topics covered include language syntax, data types, the concepts of variable scope and storage,
arrays, structures, functions and function call structure, parameter passing, and the sequence, selection (if-
then-else), and repetition control structures (for, while, repeat-until loops). A basic knowledge of C/C++
programming is a tremendous asset in learning Visual C++, Visual C#, Objective-C, Java, Perl, or any of a
variety of scripting languages such as Python or JavaScript.
Prerequisites
None
Instructional Methods
Lectures, student presentations and labs
Textbook
"Starting out with C++, From Control Structures through Objects", Tony Gaddis; Pearson, 9th edition
(February 23, 2017), ISBN-13: 978- 0134498379.
Course Objectives
Upon completion of the course students should be able to write simple C/C++ programs. Furthermore, the
students should demonstrate a broad understanding of foundational computer science concepts such as top-
down problem solving, communication within and across teams, and become familiar with the basic
components of a program and introductory concepts in program correctness and efficiency.
Topics Covered
Syntax
Data types
Selection (if-then-else)
Repetition (loops)
Arrays
Structures
Functions and function call structure
Parameter passing
String manipulation
File I/O
Grade Breakdown
Attendance/Quizes 15%
Labs 15%
Midterm exam 20%
Assignments 25%
Final exam 25%
Blackboard: used to share course documents, including syllabus, lecture notes, and assignments
Drop Date
The last day to drop a regular session course without record during the Fall 2018 term will be Friday,
September 7.
Final Exam
Note the date for the final exam as found on the Registrar’s website. The final exam must be given on the
day and time assigned by the Registrar. Please plan accordingly for travel, work or appointments. A student
having an exam scheduling conflict such as: 1) two or more exams scheduled for the same time period, or
2) three or more exams scheduled for one day, must report the conflict to their school's Academic Dean's
Office no later than fourteen calendar days before the end of classes. The dean will assist the student in
rescheduling the exam(s) for the courses having the lowest enrollment(s). All makeup exams must be
completed at the earliest possible time during the final examination period.
Academic Honesty
Academic integrity is not merely avoiding plagiarism or cheating, but it certainly includes those things.
More than anything, having academic integrity means taking responsibility for your work, your ideas, and
your effort, and giving credit to others for their work, ideas and effort. If you submit work that is not your
own – whether test answers, whole papers or something in-between – I have a responsibility to hold you
accountable. I also have a responsibility to treat you with respect and dignity while doing so.
The following sanctions are presented in the University procedures related to Student Academic Dishonesty:
“The presumed sanction for undergraduate students for academic dishonesty will be failure for the course.
There may be circumstances, however, where, perhaps because of an undergraduate student’s past record,
a more serious sanction, such as suspension or expulsion, would be appropriate. ... In the context of
graduate studies, the expectations for academic honesty are greater, and therefore the presumed sanction
for dishonesty is likely to be more severe, e.g., expulsion. ... In the more unusual case, mitigating
circumstances may exist that would warrant a lesser sanction than the presumed sanction.”
At times, you may be asked to do group work for an in-class presentation or group project. For that specific
assignment, you are allowed to share material, ideas and information; however, for any related work that is
to be submitted on an individual basis, your submission should be your own in its entirety.
For more information about what academic integrity means at CUA, including your responsibilities and
rights, visit http://integrity.cua.edu.
Course Outcomes
After completion of the course, students are expected to:
CO-1: Be able to understand and write mathematical and logical expressions in the C++ programming
language.
CO-2: Be familiar with the flow structures of structured programming (sequence, selection, repetition)
and be able to apply them to write short C++ programs.
CO-3: Be familiar with top-down design and the creation and use of “helper functions” to break down
programming problems into simpler ones.
CO-4: Be familiar with basic data storing and structuring mechanisms including basic types, arrays,
and structures.
CO-5: Be able to test, debug, and document basic C++ programs.
CO-6: Develop interpersonal skills to decompose a complex problem into components, effectively
communicate task issues, accomplish by agreed deadlines, and deliver integrated solutions.
1. Analyze a complex computing problem and to apply principles of computing and other relevant
disciplines to identify solutions.
2. Design, implement, and evaluate a computing-based solution to meet a given set of computing
requirements in the context of the program’s discipline.
3. Communicate effectively in a variety of professional contexts.
4. Recognize professional responsibilities and make informed judgments in computing practice based
on legal and ethical principles.
5. Function effectively as a member or leader of a team engaged in activities appropriate to the
program’s discipline.
6. Apply computer science theory and software development fundamentals to produce computing-
based solutions.
The matrix indicates how the learning outcomes of the course contributes to the 6 ABET Outcomes:
Process of Improvement
The instructor continuously tries to improve the course as described below:
1. The instructor evaluates student performance through in-class questions, homework, and exams
and carefully examines the suggestions made by students during the semester. Then the teacher
takes proper steps to correct any problems.
2. The teacher uses the assessment of the homework, quizzes, computer projects and exams to
determine the achievement level of the course objectives.
3. The university conducts a formal course evaluation at the end of each semester. The results of the
evaluation are used to assess various aspects of effectiveness of learning in the course.
4. At the end of every semester, the teacher meets with the chairman to discuss an improvement plan
for the course based on the above as well as the Student Course Evaluation organized by the
University.
Academic Support Services
Accommodations for Students with Disabilities: Disability Support Services (DSS)
Any student who feels they may need an accommodation based on the impact of a disability should
contact the instructor and DSS privately to discuss specific needs and coordination of reasonable
accommodations for students with documented disabilities.
Phone: (202) 319-5211 Office: Pryzbyla Center, Room 207 Web: http://disabilitysupport.cua.edu
(services & policies)
Writing Center
Provides free, one-on-one consultations with trained graduate instructors for writing projects across all
disciplines at any stage of the process, from brainstorming to revising. Appointments can be scheduled
in advance online; drop-ins welcome based on availability: see website for days and hours.
Phone: (202) 319-4286 Email: cua-writingcenter@cua.edu Office: Pryzbyla Center, Room 202 (main)
& Mullen Library Lobby (satellite) Web: http://english.cua.edu/wc/
Math Center
Math Faculty and Tutors trained to assist students struggling in areas ranging from the basics to
complex problems in calculus and statistics. Students feeling possible need of assistance in math
support for this or math classes are welcome to visit. No appointments necessary.
Phone: (202) 319-5655 Email: cua-academicsuccess@cua.edu Office: Pryzbyla Center, Room 204
Counseling Center
Provides free individual and group counseling services, psychiatric consultation, alternative testing,
and emergency services to CUA students. Additionally, consultation services and outreach programs
provided to the CUA community. Appointments may be scheduled at the office in or by phone.
Phone: (202) 319-5765 Office: O’Boyle Hall, Room 127 Web: http://counseling.cua.edu
University Grades
The University grading system is available at the following locations:
Undergraduate: http://policies.cua.edu/academicundergrad/gradesfull.cfm
Graduate: http://policies.cua.edu/academicgrad/gradesfull.cfm
Reports of grades in courses are available at the end of each term on Cardinal Station at
http://cardinalstation.cua.edu.