CSCI 261 Programming Concepts (C++)

Winter/Spring 2012

Syllabus

Computer programming in a contemporary language such as C++ or Java, using software engineering techniques. Problem solving, program design, documentation, debugging practices. Language skills: input/output, control, repetition, functions, files, classes and abstract data types, arrays, and pointers. Introduction to operating systems and object-oriented programming. Application to problems in science and engineering.

Textbook

Etter & Ingber, Engineering Problem Solving with C++, Pearson-Prentice-Hall, 2ed 2008. ISBN 0136011756.

Electronic versions of the book are available at http://www.coursesmart.com/9780136011767.

Course Goals

The objectives of this course are to introduce students to:

  1. C++, a contemporary programming language,
  2. software engineering techniques, and
  3. programming skills for solving science and engineering problems.

Upon completion of this course, you should know:

Computer Facilities and Assistance

You need an ADIT account to use the lab machines in the Computer Commons, library, and CTLM, which most students create during EPICS. If you do not have an ADIT account, you need to know your eKey (personal identification code used to create your webmail account) and visit http://newuser.mines.edu/adit prior to the first lab. If you do not know your eKey, contact the Computer Commons Help Desk in room 156A of CTLM.

We will use Microsoft Visual Studio/C++ 2010 Express for this course. It is already installed on all lab and computer commons machines. If you want to install it on your own computer, please follow these directions.

Student Evaluation

Students should familiarize themselves with both the C++ collaboration policy and the grading criteria used in this course.

Grade Component Course Grade Weight
Final Exam 30%
Final Project 15%
Exam II 15%
Exam I 15%
Assignments 25%

Assignments

Teaching assistants will post notices on piazza, our online forum, when grades for a particular assignment, per section, are complete. After assignment grades are posted on Blackboard, students have one week to review and contest an assignment grade.

Assignments may not be re-submitted after they have been graded, even if the re-submission is before the assignment deadline.

All homework assignments are due by midnight the day of the deadline.

Late Work

Late work is accepted, but you will lose 10% during the subsequent 24 hours after an assignment is due; and lose 25% (total) for assignments submitted within seven days of the original due date. Assignments submitted more than seven days past the original due date will not be graded without consent from your instructor.

Final Project & Cumulative Grades

The final project is graded on a 30 point scale. The exams and final will each be worth some large number of points (>200). All of these different earned grades, like the assignments, will be converted to a percentile score and then combined with the above weights to determine a final course grade.

You must pass the final exam (at least 60%) in order to pass this course.

Institutional Support

First and second year students are encouraged to seek academic support as they master the fundamental coursework. Information on Tutoring, Academic Enrichment Workshops, and Academic Counseling can be found at academicservices.mines.edu.

Those students who qualify for disability accommodations must request Student Disability Services deliver each professor a Confidential Letter of Required Accommodations to ensure accommodations are met.