CSc102 Introduction to Computing, Fall 2011

Lecture Instructor: Tao Wang
Lecture Time: Monday and Wednesday 6:00 - 6:50 pm
Lecture Room: NAC1/201
Email: twang@cs.ccny.cuny.edu
Research page: http://visionlab.engr.ccny.cuny.edu/~tao

Office Hour: 5-6:00 pm Wednesday
Office Room: NAC8/210

Lab Instructor: Milinda Perera
EMail: 
milinda.acdm@gmail.com
Lab Time: Thursday, 5:00 - 6:40 pm for G, 7:00-8:40 pm for G2
Lab Room: NAC7/107


ANNOUCEMENT:

The Final Grades are posted. Check you status at HERE.

Grade sheet is updated (up to HW7, and Lab 3 quiz)

For homework assignment and posting questions, please refer to the website: http://cs102g.ccvcl.org

The midterm, homework 1-4, lab grades as well as the attendence are posted. Click: [CHECK GRADE]


Course Objectives: This course makes C++ accessible to first-level engineering students as C++ maintains its stronghold in engineering and scientific communities. The course takes a pragmatic approach that incorporates actual engineering and science problems for its applications and examples. Students begin with a foundation in the structure and operation of a computer; concepts and properties of an algorithm and a programming language, such as C++, control structures, functions, recursion, arrays, pointers, strings, structure, and file IO.

Syllabus can be downloaded here. Contains a tentative course outline. Please refer this website for the most updating materials.


Prerequisites: Math 19500 Pre-calculus (min. C), Math 20100 Calculus I (min. C)

Reqired Textbook: Gary J. Bronson, C++ for Engineers and Scientists, 3rd Ed. Course Technology Incorporated, 2010, ISBN-13: 978032478439

Reqired Software: MinGW (g++ compiler)

You may need MSys (minimal unix) or Cygwin to run g++ under windows, or pure window command prompt but you need set the enviromental variables. For linux and mac user, you can just simply install g++ complier from application manager. There is a tutorial about how to install MinGW from other course.

Recommended Software: Notepad++, Textpad.

Supportive Resources:


Course Topic:

Grading:

Course Policies:

Students may discuss ideas together. But since each student get credits for his or her submissions, all actual program code and written answers must be done separately by each student, and must not be shared. Cheating will not be tolerated. If you cheat, you risk losing your position as a student in the department and the college. CUNY policy on academic integrity can be found here. Failure to understand and follow these rules will constitute cheating, and will be dealt with as per university guidelines


Lecture Notes

Date Topics Assignment
Aug. 29 Class cancelled due to Hurricane Irene  
Aug. 31 Fundamentals of C++ Programming, [lecture 1], [Lab1.zip] Read Ch. 1, Install MinGW
Sept. 5 No Class Read Ch. 2
Sept. 7 First C++ program, Data Type [lecture 2] Read Ch. 2.
Sept. 12 Arithmetic Operation, assignment and interactive input [lecture 3] Read Ch 3, Homework 1 due Sept. 19
Sept. 14 Number formatting, math library, [lecture 4], case study [src code] Read Ch 3,
Sept. 19 selection statments: if-else, nested if-else [lecture 5], [sample code] Read Ch 4, Homework 2 due Sept. 28
Sept. 21

switch, while loop, [lecture 6]
sample code: [switch], [quadratic], [number_total]

Read Ch 4-switch, Ch 5-while
Sept. 26 repetition statetments: while loop, do-while, for loop [lecture 7] Read Ch 5; Homework 3 due Oct 5
Sept. 28 No Class  
Oct. 3 Functions [lecture 8], [code1], [code2] Read Ch 6.
Oct. 5 Functions return value, overloading, scope [lecture 9], [calculator] Read Ch 6, Homework 4 due Oct. 17
Oct. 10 No Class  
Oct. 12 Intro Array [lecture 10], [sample1], [sample2] Read Ch 7.
Oct. 17 Array [lecture 11], [bingo] Read Ch. 7
Oct. 19 More on functions: return multiple values, array input.
Additional topic: variable categories [lecture 12]
Read Ch 6, 7, Homework 5, due Oct. 24
Oct. 24 Searching [lecture 13] Case study: blackjack game (source code) Read Ch 1-7, Review all homeworks
Oct. 26 Midterm Review (Solutions for examA, prob1, prob2, prob3) Midterm Exam on Thursday Oct. 27
Oct. 31 String [lecture 14], Samples: stringIntro, concatenation, countVowels, insert-replace-append Read Ch 9
Nov. 2 String Samples (refer Oct31), Character manipulation [lecture 15], Samples: [checkInput] Read Ch 9, Homework 6, due Nov. 9
Nov. 7 File input and output [lecture16], openFile, writeFile, readFile Read Ch 8
Nov. 9 File access mode and outpuf formatting [lecture17] [sample] Read Ch 8, Homework 7, due Nov. 16
Use this input file: [grades.txt]
Nov. 14 Intro classes [lecture 18] Read Ch 10
Nov. 16 Class [lecture 19]. Case study: [Elavator] Read 11, Homework 8, due Nov. 28. Files needed for the hw: [hw8.zip]
Nov. 21 Advanced classes: [lecture 20] operator overloading, type conversion, inheritance, polymorphism Read Ch 11
Nov. 23 Pointers [lecture 21] [Binky Pointer Fun Video] Read Ch 12
Nov. 28 Pointers [lecture 22] [Sample] Read Ch 12
Nov. 30 Structures [lecture 23] sample code: [Employee] Read Ch 13 Homework 9, due Dec. 7
Dec. 5 Recursion [lecture 24], tower of hanoi: [code] Additional materials
Dec. 7 Final Review Homework 10 (extra credit) due, Dec. 14
Dec. 12 Review, Sample exercises  
Dec. 19 Final Exam, Monday, 6:00pm - 8-15pm