Bryn Mawr College
CS
110: Introduction to Computer Science
Fall 1999
Course Materials
General Information
Instructor: Deepak Kumar, 248 Park Hall, 526-7485
E-Mail:
dkumar@brynmawr.edu
WWW: http://mainline.brynmawr.edu/~dkumar
Lecture Hours: Tuesdays & Thursdays, 2:30 p.m. to 4:00 p.m.
Room: Park 338
Laboratory Assistants:
- Maria Hristova (mhristov@brynmawr.edu). Hours: Thursday 7-9 p.m. and
Sunday 7-9 p.m., in Guild Hall.
- Archana Joshee (ajoshee@brynmawr.edu). Hours: Thursday 4-6 p.m. and
Friday 5-7 p.m. in Guild Hall.
- Marisha Kirtane (mkirtane@brynmawr.edu). Hours: Wednesday 4-6 p.m.
and Monday 7-9 p.m. in Guild Hall.
- Ying Wang (ywang@brynmawr.edu). Hours: Tuesday 4-6 p.m. and Friday
3-5 p.m. in Room 354, PSB.
Laboratories:
- CS Mac Bay, Guild Hall (Computing Center) Hours: Open for 18
hours each day. Check Computing Center for more details.
- Computational Modeling Lab, Room 10, Park Hall (Science Building).
This lab is open for several hours during the week: Mondays 7-10 p.m.,
Tuesdays 7-10 p.m.,Wednesdays 10-12 p.m., Thursdays 1 to 4 p.m. and 8 p.m.
to midnight.
- Mathematics Department Computing Lab, Room 354 Park Hall (Science
Building). This lab is also open several hours each day. Check the
schedule posted at the door.
Texts & Software
- C++ How To Program (Second Edition), by H. M. Deitel & P.
J. Deitel, Prentice Hall, 1998.
- The Mac & I: A Laboratory Manual for Introduction to Computer
Science, by Clare Congdon & Deepak Kumar, Bryn Mawr College, Fall
1999.
- CodeWarrior Pro 5 for Macintosh, Software by Metrowerks, 1999.
This software is installed in all the Laboratories mentioned above.
- C++ Graphics Libraries, from Northeastern University (modified
for Bryn Mawr College by Clare Congdon & Deepak Kumar). These are also
installed in all the laboratories listed above.
Important Dates
August 31 : First lecture
September 28 : Exam 1
November 2 : Exam 2
December 2: Last lecture
December 7 : Exam 3
Assignments
- (9/2/99) Project#1 (Due on Thursday, September 9): Click here for details.
- (9/14/99) Project#2 (Due on Tuesday, September 21): Click here for details.
- (9/30/99) Project#3 (Due on Thursday, October 7): Click
here for details.
- (10/7/99) Project#4 (Due on Thursday, October 21): Click here for details.
- (10/21/99) Project#5 (Due on Tuesday, November 9): Click here for details.
- (11/9/99) Project#6 (Due on Thursday, December 2): Click here for details.
Lectures
- Week 1 (August 31, September 2)
August 31:
Discussion on Technology related issues. Results
of the lottery.
September 2: What is a computer?
What is computer science? What is a program? Why not write programs in
english? Why program in C++? A first C++ program.
Read:
Chapter 1 (only sections 1.1 through 1.6) from Deitel & Deitel as well
as Chapter 1 from The Mac & I.
Project#1: Click Here for details.
- Week 2 (September 7, 9)
September 7: Structure
of a C++ program. Variables, declarations, arithmetic operations, assignment
statement, if-statements, simple input and output in C++.
Read:
Chapter 1 from Deitel & Deitel as well as Chapters 1, 2 and 3 from
The Mac & I.
September 9: Project#1 is due today
(in class).
Review of Project#1. Y2k Problem (See Links below).
- Week 3 (September 14, 16)
September 14: Control
Structures in C++: if-else, switch, while, do, for.
Read:
Chapter 2 from Deitel & Deitel.
Project#2: Click Here for details.
September
16: Class cancelled due to Floyd. Project#2
will be due on thursday, September 23.
- Week 4 (September 21, 23)
Septmeber 21: Control
Structures in C++: Some practice with loops.
September
13: Using some library functions: the math.h library and stdlib.h libraries.
Read: Sections 3.1-3.3 and 3.8 from Deitel & Deitel.
- Week 5 (September 28, 30)
September 28:
Exam 1 is today.
September
30: Using C++ library functions. Generating random numbers. User-defined
functions in C++.
Read: Chapter 3 from Deitel &
Deitel
Project#3: Click
Here for details.
- Week 6 (October 5, 7)
October 5: Graphics
in C++. Basics of the Drawing Window, coordinate system, and basic drawing
commands.
Read: Chapters 4 and 5 from The Mac &
I.
October 7: Examples of graphics in C++. Doing
animations.
Project#4: Click
Here for details.
- Week 7 (October 12, 14)
October 12: No class, Fall Break!
October
14: Review of basic trigonometric functions. Drawing random circles.
Finding prime numbers.
- Week 8 (October 19, 21)
October 19: More
practice with loops, functions, etc.
Reminder: For the grading
and evaluation of Project#4 animations, you have to make an appointment
with me. You may do so for any time between now and tuesday, October 26.
My schedule of commitments is posted outside my office door. Feel free
to sign in on it.
October 21: Project#4 is due today.
Review of fucntions and parameters.
Project#5: Click here for details.
I will
be out of town this friday (10/22) giving a talk at MindFest.
- Week 9 (October 26, 28)
October 26: Arrays
in C++.
Read: Chapter 4 from Deitel & Deitel
October 28: Character arrays. The ASCII code.
I will be out of town this friday (10/29), for a meeting in
Austin, TX.
- Week 10 (November 2, 4)
November 2: Exam 2 is today.
November
4: Review of Exam 2. Characters arrays and strings.
- Week 11 (November 9, 11)
November 9: Project#5
is due today. Class was cancelled today due to a broken finger that needed
fixing! Apologies for the cancellation. We will make up for it in the next
few weeks. I will collect the Project#5 on thursday.
Project#6:
Click here for details.
November
11:Text processing in C++. File input in C++ (See example from class:
Palindrome)
- Week 12 (November 16, 18)
November 16: File
Input in C++. Sorting: Insertion Sort & Selection Sort. A taste of
algorithm analysis.
By this evening, your program for Project#6
should be able to input a list of top ten songs from a file and print it
out.
November 18: Finding Anagrams in a dictionary
of words.
- Week 13 (November 23, 25)
November 23: File
Output in C++. Variations on the anagram theme. Word processing.
November 25: No class, Thanksgiving Break!
- Week 14 (November 30, December 2)
Note: I
will be available on Wed, Dec 1 for consultation and also before class
on Thursday, Dec. 2. I will be out of town from Dec 2 after class until
Monday morning.
November 30: A simple interactive
"intelligent" program. Introduction to Artificial Intelligence.
December 2: Implementing a simnple version of Eliza.
Course Wrap. Project#6 is due today.
- Week 15 (December 7)
December 7: Exam
3 is today.
Grading
All graded work will receive a grade, 4.0, 3.7, 3.3, 3.0, 2.7, 2.3, 2.0,
1.7, 1.3, 1.0, or 0.0. At the end of the semester, final grades will be
calculated as a weighted average of all grades according to the following
weights:
Exam 1: 15%
Exam 2: 15%
Exam 3: 15%
Projects: 45%
Term Paper: 10%
Total: 100%
Links
Created by dkumar@brynmawr.edu
on August 25, 1999.