Term and Credits
Fall 2016-2017
3 Credits
Room and Time
Lecture: Monday 12:00pm-1:50pm RANDEL 121
Labs:
Section 61: Thursday 5pm-6:50pm CURTIS 231 (Tiffany and Prateek)
Section 62: Wednesday 1pm-2:50pm CURTIS 231 (Joseph and Eshu)
Section 63: Wednesday 11am-12:50pm UCROSS 149 (Prateek and Joseph)
Section 64: Wednesday 3pm-4:50pm CURTIS 231 (Eshu and Prateek)
Instructor
Mark Boady
Electronic Mail Address:
mwb33@drexel.edu
Office: University Crossings 138
Extention: 215-895-2347
Office Hours: Mon. 4-5pm, Tues. 2-4pm, Wed. 4-5pm
Teaching Assistant(s)
Prateek Somawanshi ps637@drexel.edu
Joseph Urbano jau35@drexel.edu
Eshu Jain ej357@drexel.edu
Tiffany Wong tyw24@drexel.edu
Course Description
Fundamentals of structured and object-oriented programming in the language of instruction (e.g., C++). Topics include: variables, input and output, expressions, assignment statements, conditionals and branching, functions, parameter passing, and repetition.
Course Objective and Goals
Audience and Purpose within Plan of Study
This course is the first in a two-term sequence of computer programming courses in C++ (CS 171-2) and is a required course for students majoring in computer science, mathematics, physics, information systems, and digital media. It is also a required course for students pursuing a minor in computer science. The goal is for students completing this sequence to be competent programmers, able to write working C++ program on their own using appropriate constructs when presented with a problem description.
Prerequisites
None.
While there are no formal prerequisites for the course, students are expected to be computer literate. Prior programming experience (such as that gained in CS164: Introduction to Computer Science, SE 101: Software Engineering I, CS 140: Multimedia Programming, CS 143: Computer Programming Fundamentals, or PHYS 160: Introduction to Scientific Computing) is not required, but is definitely helpful.
Textbook
Big C++ (2nd Edition)
Robert Sedgewick, Kevin Wayne
ISBN-10: 0470383283
ISBN-13: 978-0470383285
E-Textbook from https://www.vitalsource.com
Also available through the Drexel Bookstore
Also available from Amazon
Grading and Policies
Final grades will be determined by your total points weighted according to this distribution. Grades may be curved but are generally computed via the formula below. It may be modified at the instructor's sole discretion, but letter grades will generally not be lower than those shown here.
Pre-Labs
Prior to each lab there will be a pre-lab. This is intended to be done on your own and will be due prior to your lab. The purpose of this is to get you thinking about topics relevant to the lab prior to meeting with your group in lab. That way hopefully you have more to contribute and things can go (relatively) smoothly!
The pre-lab will be a written assignment that must be handed in on paper at the start of the lab.
Labs
Your lab grade is based upon your attendance in lab, participation in individual and group lab activities, and completion of assigned lab projects. Each lab period you will be given an assignment which must be started in class. During class time you may consult with other students or the TAs if you need help on the lab. Because labs involve group work experiences, you are expected to attend and participate as part of a group, and not work alone outside the lab.
If you cannot make a lab and notify the TA prior to lab you may make it up during his office hours. If you do not notify him/her prior and/or don't work on the lab during his/her office hours then you will receive zero credit for that lab. This must be done within one week of the original lab.
All lab assignments will be posted on Bb Learn. There you will find instructions for each lab, along with questions that you must answer. In lab, you will receive a paper lab grade sheet. The TA will sign off on parts of the lab as you complete them. This sheet will also include written questions the TAs will grade outside of lab.
If you cannot finish a lab, you may complete the lab at home (yes this is seemingly contradictory to a prior statement, but in the case that you spend the entire time working with your group in lab and cannot finish by the end, then you may finish at home).
To receive credit for the lab, you MUST meet with the TA to have your lab grade sheet updated. The TA will review your work and give you a new grade. This MUST be done within one week of the original lab date. (Before the start of the next lab.)
Assignments
All assignments will be posted with a due date. No late material will be accepted. Even if it's less than a second overdue. Make sure to submit early. Your lowest assignment grade will be dropped since I realize that occasionally things happen.
All written material (non-code) must be prepared on a word processor, converted to pdf, and submitted electronically via Bb Learn.
Although labs are designed to be collaborative, pre-lab and assignments are meant to be done individually. If at any point you use part of someone else's solution in an assignment you MUST cite the source of the code. Copy from others (online or classmates) results in an automatic zero for the assignment and additional possible penalties (including course failure and/or escalation to the honor board).
Additional Policies
Plagiarism Detection System
To ensure that assignments are done independently, in addition to human observation, we will be running all assignments through a plagiarism detection system. This program uses compiler techniques which are invariant of syntax and style. It has a very high accuracy rate.
Academic Honesty Policy
The CCI Academic Honesty policy is in effect for this course. Please see the policy at http://drexel.edu/cci/resources/current-students/undergraduate/policies/cs-academic-integrity/ .
Submitting Assignments
Assignments will be submitted to learning.drexel.edu by 11:59PM on the date they are due. Grades will be reported via learning.drexel.edu.
Written Assignments must be submitted as PDFs. They may be typed or scanned, but only PDF files will be accepted.
Assignments and exams will be returned on a regular basis to provide feedback to students.
Late Submissions will not be accepted without written proof (see special exceptions below). Dropping the lowest grade in each range allows you to miss an assignment if needed.
Special Circumstances: If you have a documented reason why you cannot submit a homework by the cut-off deadline, a special exception may be made. The Professor may also wave the late submission penalty for documented special exceptions.
Computer/Software Help
iCommons: http://drexel.edu/cci/about/our-facilities/rush-building/iCommons/
University Policies
In addition to the course policies listed on this syllabus, course assignments or course website, the following University policies are in effect:
Software and Hardware Requirements
All Drexel students are required to have individual access to a dedicated computer which meets minimum specifications, including: processor speed, memory and secondary storage requirements, connectivity via high-speed or direct connection to campus network, and a CD/DVD drive.
Visual Studio
The official compiler used for this course is Microsoft Visual Studio Professional 2013. This compiler runs under the Windows operating system only. Students using other operating systems are responsible for ensuring that programs they write will compile and run properly with Visual C++. Drexel Students may obtain Microsoft Visual Studio Professional 2013 via the Dreamspark Suite from Microsoft Academic Alliance.
To obtain Visual Studio:
Tentative Course Schedule
Please see the appropriate assignment webpages for a detailed description of course deliverables.
Week | Topic | Reading | Notes |
1 (9/19/16) | Anatomy of a C++ Program | Chapters 1-2 | |
2 (9/26/16) | Basic Element of C++ | Chapter 2 | Quiz 1 in Lab |
3 (10/3/16) | Conditional Flow Control | Chapters 3.1-3.5 | HW 1 Due 10/7/16 at 11:59PM |
4 (10/10/16) | No Lecture for Columbus Day Monday. Labs run normally. | Quiz 2 in Lab | |
5 (10/17/16) | Loops | Chapters 3.6-3.11 | HW 2 Due 10/21/16 at 11:59PM |
6 (10/24/16) | Introduction to Functions | Chapter 4 | Quiz 3 in Lab |
7 (10/31/16) | Advanced Function Use | Chapters 4,10 | HW 3 Due 11/4/16 at 11:59PM |
8 (11/7/16) | Advanced Mathematics in C++ | Chapter 3 | Quiz 4 in Lab |
9 (11/14/16) | Introduction to Object Oriented Programming | Chapter 2 | HW 4 Due 11/18/16 at 11:59PM |
10 (11/21/16) | More About Object Oriented Programming | Chapter 9 | No Labs - Thanksgiving |
11 (11/28/16) | Review for Final | HW 5 Due 12/2/16 at 11:59PM Quiz 5 in Lab |
|
12 (12/5/16) | Final Exam |