MIT OpenCourseWare
  • OCW home
  • Course List
  • about OCW
  • Help
  • Feedback
  • Support MIT OCW

Comps./Programming

The .exe files found in this section are executable programs.

Instructor

Prof. I. Kristina Lundqvist

Learning Objectives

16.01-16.02 Computers and Programming (PDF)

Textbooks

Feldman, Michael, and Elliot Koffman. Ada 95: Problem Solving and Program Design. 3rd edition. Reading, MA: Addison Wesley, 1999. ISBN: 020136123X.

Brookshear, J. Glenn. Computer Science: An Overview. 7th edition. Reading, MA: Addison Wesley, 2002. ISBN: 0201781301.

Additional Resources

Table Organization

LEC # TOPICS HANDOUTS MUDDY POINTS READINGS ASSIGNMENTS / SOLUTIONS
16.01-16.02, FALL 2003
Week 1
C1 Introduction, Computer Software (PDF) AdaGide Supplement (PDF) C1 Mud (PDF) Feldman and Koffman, 1-34
Brookshear, 208-217, 237-244
Week 2
C2 Ada: First Program, Programming Style, Tools (PDF) Screen (ADB)
Screen (ADS)
C2 Mud (PDF) Feldman and Koffman, 34-61
Brookshear, 156-171
Problem C2 (PDF)
Solution C2 (PDF)
C3 Ada: Syntax, With / Use, Variables, Constants, Control Structure, Data Types (PDF) C3 Mud (PDF) Feldman and Koffman, 65-111
Brookshear, 217-228
Problem C3 (PDF)
Solution C3 (PDF)
C4 Bits, Nibbles, Bytes Ada: Control Structures (PDF) C4 Mud (PDF) Feldman and Koffman, 157-165, 245-255
Brookshear, 20-46, 499
Problem C4 (PDF)
Solution C4 (PDF)
C5 Number Representation and Manipulation (PDF) Number Representation Supplement (PDF) C5 Mud (PDF) Brookshear, 47-71 Problem C5 (PDF)
Solution C5 (PDF)
Week 3
C6 Computer Architecture (PDF) C6 Mud (PDF) Brookshear, 74-98 Problem C6 (PDF)
Solution C6 (PDF)
C7 Machine Language (PDF) Machine Language Supplement (PDF)
The Simple Simulator
C7 Mud (PDF) Brookshear, 505-507 Problem C7 (PDF)
Solution C7 (PDF)
C8 Ada: Subtypes, Enumeration Types (PDF) C8 Mud (PDF) Feldman and Koffman, 115-151 Problem C8 (PDF)
Solution C8 (PDF)
C9 Ada: Packages, Procedures, Functions, Scope and Visibility (PDF) C9 Mud (PDF) Feldman and Koffman, 136-150, 182-193, 276-285
Brookshear, 228-234
Problem C9 (PDF)
Solution C9 (PDF)
Week 4
C10 Ada: Conditional Structures (PDF) Feldman and Koffman, 175-182, 193-194, 347-353 Problem C10 (PDF)
Solution C10 (PDF)
C11 Ada: Iterative Structures (PDF) C11 Mud (PDF) Feldman and Koffman, 199-209, 220-223, 266-267 Problem C11 (PDF)
Solution C11 (PDF)
Week 5
C12 Ada: Recursion (PDF) Feldman and Koffman, 591-621
Brookshear, 181-189
Problem C12 (PDF)
Solution C12 (PDF)
C13 Solving Recurrence Equations (PDF) C13 Mud (PDF) Problem C13 (PDF)
Solution C13 (PDF)
C14 Ada: Data Structures, Linear Lists, Arrays (PDF) C14 Mud (PDF) Feldman and Koffman, 385-413, 469-474, 559
Brookshear, 302-318
Problem C14 (PDF)
Solution C14 (PDF)
Week 6
C15 Ada: Matrices (PDF)
Matrix Supplement (PDF)
Ada95 Matrix Package
C15 Mud (PDF) Feldman and Koffman, 557-563 Problem C15 (PDF)
Solution C15 (PDF)
C16 Ada: Records, Files (PDF) C16 Mud (PDF) Feldman and Koffman, 367-384, 415-420, 214-217 Problem C16 (PDF)
Solution C16 (PDF)
Week 7
C17 Quiz Discussion
16.03-16.04, SPRING 2004
Week 6
C1 Ada: Overview (PDF) ADA Tutorial Supplement
Cots Journal Online
C1 Mud (PDF)
C2 Ada: Characters and Strings (PDF) C2 Mud (PDF) Feldman and Koffman, sec. 8.5, 10.1-10.2, 10.5 Problem C2 (PDF)
Solution C2 (PDF)
Week 7
C3 Ada: Files (PDF) C3 Mud (PDF) Feldman and Koffman, sec. 6.3, 10.3-10.7 Problem C3 (PDF)
Solution C3 (PDF)
C4 Stacks and Queues (PDF) Stacks Supplement  C4 Mud (PDF) Feldman and Koffman, sec. 15.6
Brookshear, sec. 7.4-7.5
Problem C4 (PDF)
Solution C4 (PDF)
Week 8
C5 Ada: Access Types (PDF) Linked Lists Supplement C5 Mud (PDF) Feldman and Koffman, sec. 15.1-15.4, 15.7
Brookshear, sec. 7.1, 7.3
Problem C5 (PDF)
Solution C5 (PDF)
C6 Graphs (PDF) Graph Theory Supplement C6 Mud (PDF) Problem C6 (PDF)
Solution C6 (PDF)
C7 Trees (PDF) C7 Mud (PDF) Brookshear, sec. 7.6 Problem C7 (PDF)
Solution C7 (PDF)
Week 9
C8 More Trees (PDF) C8 Mud (PDF) Brookshear, sec. 10.3 Problem C8 (PDF)
Solution C8 (PDF)
C9 Algorithm Analysis: Big-O (PDF) Efficiency Supplement C9 Mud (PDF) Brookshear, sec. 4.6, 11.5 Problem C9 (PDF)
Solution C9 (PDF)
C10 Algorithm Analysis: Data Structures, Search and Sort Algorithms (PDF) C10 Mud (PDF) Brookshear, sec. 4.4-4.5 Problem C10 (PDF)
Solution C10 (PDF)
Week 10
C11 Algorithm Analysis: Reasonable vs. Unreasonable Algorithms, Complexity (PDF) C11 Mud (PDF) Problem C11 (PDF)
Solution C11 (PDF)
C12 Ada: Program Robustness (PDF) C12 Mud (PDF) Problem C12 (PDF)
Solution C12 (PDF)
C13 Software Engineering and Testing (PDF) Brookshear, sec. 6.1-6.2, 6.6 Problem C13 (PDF)
Solution C13 (PDF)
Week 11
C14 Ada: Writing Large Programs (PDF) Problem C14 (PDF)
Solution C14 (PDF)
Week 12
C15 Guest Lecturer:
Prof. Robert Dewar
University of Chicago (PDF) (Courtesy of Robert Dewar. Used with permission.)
C16 Introduction to Logic (PDF) Brookshear, sec. 1.1, 5.7 Problem C16 (PDF)
Solution C16 (PDF)
C17 Quiz Discussion
Week 13
C18 More Logic (PDF) Problem C18 (PDF)
C19 Even More Logic (PDF) C19 Mud (PDF) Problem C19 (PDF)
C20 Proof Theory (PDF) Feldman and Koffman, sec. 17.2 Problem C20 (PDF)
Week 14
C21 Ada: Generics Feldman and Koffman, sec. 17.3-17.4
C22 Proof Theory (cont.) (PDF) Feldman and Koffman, sec. 12.3-12.6
C23 Guest Lecturer:
Heidi Perry
Draper Laboratories

Additional Resources

Recitations: 16.01-16.02, Fall 2003

Recitation 1 (PDF)
Recitation 2 (PDF)

Recitations: 16.03-16.04, Spring 2004

Recitation 1 (PDF)
Recitation 2 (PDF)
Recitation 3 (PDF); Mud (PDF)
Recitation 5 (PDF)


Software

The latest version of GNAT can be downloaded from the New York University Computer Science Department's ftp site, or version 3.15 can be downloaded here. (EXE)

GNAT installation instructions (PDF)

AdaGide can be downloaded from the United States Air Force Academy website. 

AdaGide instructions (PDF)

The Brookshear Simple Simulator can be downloaded from the University of Twente.

Related ADA Resources

The Ada 95 Rationale
The Ada 95 Language Reference Manual
The Ada Style Guide
GNAT Reference Manual
Ada Information Clearinghouse
Home of the Brave Ada Programmers - HBAP
AdaPower
Ada Core Technologies - ACT
comp.lang.ada