Prerequisite: Math 120
Time and Place: 2:00 - 2:50 PM MW SL 1105 (lecture)
1:00 - 2:50 PM R SL 1225 (sec. 004 lab)
1:30 - 3:20 PM F SL 1225 (sec. 005 lab)
Instructor: Xudong William Yu
Founders Hall 2324A
Office Hours: 10:00 - 12:00 AM M-F (or by appointment)
TA/Lab Instructor: Wei Zheng
Office Hours: 10 – 12 T & 3:20 – 5:20 F (in SL 1227)
Lab Assistant: Hariprasad Malladi
Office Hours: 2:50 – 4:50 Thursday (in SL 1227)
Text Books: "Problem Solving with C++", Second Edition, by Walter Savitch,
This is the first in a three-course sequence in Introduction to Computing. This course introduces the students to computer science and in particular programming for problem solving. Topics covered include, but not limited to, computer organization, data representation, algorithm development and the design and development of structured programming in C++, that include decision making, looping constructs, functions, processing of files, arrays and processing of character strings.
The instructor will place class material (e.g., assignments, examples, announcements, etc) in the folder scfs3\classes\computer science\cs140\Xudong Yu\Fall99. Students can access the information by logging in to the computer in our lab. Please check the folder before each class for new examples.
For students to gain understanding of the material presented in the course, regular class attendance is essential. Students are expected to attend all classes and arrive on time. Any student who arrives late to class must see the instructor immediately after the class. Except for an emergency, any student who needs to leave the class early must notify the instructor prior to the start of the class.
Computer assignments will be given once a week at the beginning of the lab. Assignments are either in-class which are due three hours from the beginning of the lab or take-home which are due at the beginning of the next lab. Most assignment will require the submission of both a hard copy and a softcopy. Retain all source programs until a graded program printout is returned to you. A 10% penalty will be applied for each day the program is late, including weekends, prior to the instructor’s grading. No late program will be accepted after the instructor/TA has graded the class’s programs. Students are expected to do their own work. Copying of other people's work for tests, quizzes, or lab work will result in the assignment of a zero grade.
Five-minute quizzes will be given once a week, usually in the first 5 minutes of a lab. The questions on each quiz will cover recent material from the lectures and the labs.
Two 50-minute tests and a 100-minute comprehensive final examination will be given. They will be announced at least a week in advance. Student who has a hardship excuse for missing a test must notify the instructor on or before the day of the test to schedule a makeup.
Programming assignments: 30%
Final examination: 24%
90 – 100 A
80 – 89 B
70 – 79 C
60 – 69 D
0 – 59 E
Week 1: Intro to hardware, algorithm, and program design (Sec. 1.1, 1.2),
Intro to Windows NT & Lab Set up.
Week 2: Intro to C++ (sec. 1.3), Variables and Assignment (Sec. 2.1),
Introduction to Visual C++.
Week 3: cin and cout (sec. 2.2), Data Types and Expressions (Sec. 2.3),
Week 4: if-else, while, and do-while (Sec. 2.4), Nested if-else,
switch (Sec. 7.1, 7.2),
Week 5: for loop, Nested Loops (Sec. 7.3, 7.4), Review for Test 1.
Week 6: Test 1 (chapters 1 & 2, Sec. 7.1-7.4), Library Functions (Sec. 3.1, 3.2)
Week 7: User-defined Functions (Sec. 3.3-3.4), Local Variables (Sec. 3.5)
Week 8: Overloading Function Names (Sec. 3.6), void Functions (Sec. 4.1)
Week 9: Call-by-reference (Sec. 4.2), Functions Calling Functions (Sec. 4.3)
Week 10: Testing & Debugging (Sec. 4.4), File I/O (Sec. 5.1)
Week 11: Stream I/O (Sec. 5.2), Review for Test 2
Week 12: Test 2 (chapters 1-5, Sec. 71.-7.4), Arrays (Sec. 9.1)
Week 13: Arrays in Functions (Sec. 9.2), Array-Based Algorithms (Sec. 9.3)
Week 14: Strings (10.1), and String I/O
Week 15: Multi-dimensional Arrays (Sec. 10.2), Review for Final
Week 16: Final Exam.