EID 151: Programming Languages
Spring 2004
Monday 3:00 - 5:00 Rm 521, Thursday 4:00 - 5:00 Rm 621
Instructor: 
Carl Sable
e-mail: sable2@cooper.edu
Office: Room 461
Office Hours: Monday 12:00 - 1:00;
Wednesday, Thursday, and Friday 11:00 - 12:00
Programming Assignments: 65%
Midterm: 10%
Final: 25%
- Homework #1
 Program #1 due Wednesday night, Feb 25, by midnight
 Program #2 due Wednesday night, Mar 3, by midnight
- Homework #2
 Due Wednesday night, March 24, by midnight
- Homework #3
 Due Wednesday night, April 21, by midnight
 Sample run
- Homework #4
 Due Wednesday night, May 5, by midnight
 Provided code
 Sample run
Information on assignments will be posted when they are assigned.
The schedule will be updated as the semester progresses.
Part I: General Programming Concepts and C
- Thurssday, January 22
 Introduction
- Monday, January 26
 Topic #1:
Structured Programming, Memory, and Activation Records
 Tic-Tac-Toe (code and
sample run)
- Thursday, January 29
 Topic #1 (continued)
- Monday, February 2
 Topic #2:
Pointers, Strings, and Structures
 Palindrome detector (code)
 Formatter (code,
sample input file, and
sample run)
 Simple Phone Book (code,
sample input file, and
sample run)
- Thursday, February 5
 Topic #2 (continued)
- Monday, February 9
 Topic #3:
Recursion
 Grid searcher (code,
sample input file, and
sample run)
- Thursday, February 12
 Topic #3 (continued)
- Thursday, Febrary 19
 Topic #4:
Linked Lists
 A few routines (code)
- Monday, February 23
 Topic #4 (continued)
- Thursday, February 26
 Topic #4 (continued)
- Monday, March 1
 Topic #5:
Linked List Applications
 Complex Phone Book (code,
sample input file, and
sample run)
 Big Multiplication (code)
 Word Counter (code,
sample input file, and
sample run)
- Thursday, March 4
 Topic #6:
Binary Trees
 Word Counter (code,
sample input file, and
sample run)
Part II: Object-Oriented Programming and C++
- Monday, March 8
 Topic #7:
Introduction to C++
- Thursday, March 11
 Topic #7 (continued)
- Monday, March 22
 Topic #7 (continued)
- Thursday, March 25
 Topic #7 (continued)
- Monday, March 29
 MIDTERM (covers only material from Part I of the course)
- Thursday, April 1
 Topic #7 (continued)
- Monday, April 5
 Topic #8:
Classes
- Thursday, April 8
 Topic #8 (continued)
- Monday, April 12
 Topic #9:
Operator Overloading
- Thursday, April 15
 Topic #9 (continued)
- Monday, April 19
 Topic #10:
Derived Classes, Inheritance, and Polymorphism
- Thursday, April 22
 Topic #10 (continued)
Part III: Java and Perl
- Monday, April 26
 Topic #11:
Java
- Thursday, April 29
 Topic #11 (continued)
- Monday, May 3
 Topic #11 (continued)
- Thursday, May 6
 Topic #12:
Perl
- Monday, May 10
 FINAL (covers only material from parts II and III of the course)