CS 140 - Introduction to Computing I

Fall 1999 - sections 004/005

 

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

                        (618) 650-2321

                        email: xyu@siue.edu

                        url: www.cs.siue.edu/xyu

            Office Hours:             10:00 - 12:00 AM M-F (or by appointment)                                                    

TA/Lab Instructor:     Wei Zheng       

                        wezheng@siue.edu                  

 

Office Hours:             10 – 12 T & 3:20 – 5:20 F (in SL 1227)

 

Lab Assistant:            Hariprasad Malladi

                        hmallad@siue.edu

 

Office Hours:             2:50 – 4:50 Thursday (in SL 1227)

 

            Text Books:                "Problem Solving with C++", Second Edition, by Walter Savitch,

                                                Addison-Wesley, 1999.

 

Overview:

 

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.

 

Electronic Communication:

 

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.

 

 

 

 

Class Attendance:

 

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.

 

Assignments:

 

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.

 

Quizzes:

 

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.

 

Tests:

 

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.

 

            Grading:         

                                    Quizzes:                                                10%

Tests:                                                   36%

Programming assignments:                     30%

Final examination:                                 24%

 

Grading Scale:

                                                            90 – 100                      A

80 – 89                        B

70 – 79                        C

60 – 69                        D

0 – 59                          E


 

            Tentative Schedule

 

                        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.