C++ Programming -- Fall 2019




Sample Assignment

Assignment Guidelines

Welcome to CS2024!

Welcome to the Fall 2019 installment of CS2024: C++ Programming.

All day-to-day information about the course will be distributed through the Computer Science Department's Course Management System (CMS). Please email Ron if you do not have CS2024 showing in CMS by August 29. This web page is maintained to provide links into CMS as well as to provide static information about the course for this semester.


CS2024 meets Tuesdays and Thursdays in 185 Stateler Hall (Statler Auditorium) from 12:20PM to 1:10PM. The course is being taught by Ron DiNapoli who can be reached at rd29@cornell.edu. Details on Ron's office hours are listed further down on this page.   The TA for this course is Vignesh Rao (vnr7@cornell.edu) and our undergraduate TA/consultants are Bryant Lee and Kaitlyn Li.


This semester we will be using Deitel and Deitel's "C++: How To Program." (Tenth Edition). I must emphasize that CS2024 covers "vanilla" C++ and does not attempt to cover material on specific compilers. Why this book? I had the opportunity to review a specialized verison of this text (Visual C++ 2008: How To Program) text and was very impressed with how thoroughly the C++ language was covered and how well written the text is.  For the first time I will NOT be requiring you to purchase the book.    That being said you may do better if you have access to the book.  There will be copies in the Engineering Library and you could consider a textbook rental through Amazon.  You are, of course, free to purchase the book as well!

A second book you might want to pick up is Stroustrup's "The C++ Programming Language." This is considered the "standard text" for C++ written by the author of the language himself. It is not, in my opinion, a great book to learn C++ from, but it is a fairly definitive reference. Once you've spent some time working with C++ you will appreciate the Stroustrup book more. When you are just starting out, it can be a bit overwhelming. If you plan to do much work with C++ after this course, you might appreciate having a copy of Stroustrup's book on your shelf.


There will be 12 assignments, 2 prelims and a final project. Assignments are given every Thursday (with a few exceptions) and will be due at 11:59PM the following Wednesday night. NO LATE ASSIGNMENTS ARE ACCEPTED. The lowest two assignments are dropped, and the average of the remaining 10 are worth 40% of your final grade. The prelims and the final project are each individually worth 20% of your grade. Those who, at the end of the semester, have a final grade of 70 or higher earn an "S" in the course. If your final grade is below 70, you will be given a "U". Grades are calculated with this formula:

FINAL GRADE = (ASSIGNMENT AVE * 0.4) + (Prelim1 * 0.2) + (Prelim2 * 0.2) + (FinalProject * 0.2)

As you will see, it is possible to earn a grade above 70 without doing the final project. In fact, most students who do well on both prelims and have a decent assignment average will not have to do the final project at all. More details will be given in class.


Office hours for this semester have been finalized:

Tuesdays, 4PM - 6PM,  441B Gates Hall  (Ron)
Tuesdays, 6PM - 7:30PM, 576 Rhodes Hall (Vignesh)

Wednesdays, 3:30PM - 5PM, 584 Rhodes Hall (Vignesh)
Wednesdays, 7PM - 8:30PM, 441B Gates Hall (Ron)