15-112 Fundamentals of Programming

Schedule


Week 1

Topics: Basics + Data types + Functions + Conditionals + Loops + Intro to strings

Lecture 1.1 Video Slides Notes
Lecture 1.2 Video Slides Notes
Lecture 1.3 Video Slides Notes
Lecture 1.4 Video Slides Notes
Lecture 1.5 Video Slides Notes

HW 1.1 (due May 17, 5pm)
HW 1.2 (due May 18, 5pm)
HW 1.3 (due May 19, 5pm)
HW 1.4 (due May 22, 8pm)


Week 2

Topics: String operations and methods + Monte Carlo method + Style + Top-down design + Lists (1d) + Graphics

Lecture 2.1 Video Slides Notes
Lecture 2.2 Video Slides Notes
Lecture 2.3 Video Slides Notes
Lecture 2.4 Video Slides Notes
Lecture 2.5: Review

HW 2.1 (due May 25, 5pm)
HW 2.2 (due May 26, 5pm)
HW 2.3 (due May 29, 8pm)


Week 3

Topics: 2d lists + Basics of efficiency + Searching and Sorting + Sets and Dictionaries

Lecture 3.1 Video Slides Notes
Lecture 3.2 Video Slides Notes
Lecture 3.3 Video Slides Notes
Lecture 3.4: Review

HW 3.1 (due June 1, 5pm)
HW 3.2 (due June 4, 5pm)


Week 4

Topics: Animations + Object-Oriented Programming (OOP) Part 1

Lecture 4.1 Video No slides Notes
Lecture 4.2 Video No slides Notes
Lecture 4.3 Video Slides Notes

HW 4.1 (due June 9, 5pm)
HW 4.2 (due June 11, 5pm)
HW 4.3 (due June 13, 5pm)


Week 5

Topics: OOP Part 2 + Recursion

Lecture 5.1 Video Slides Notes
Lecture 5.2 Video Slides Notes
Lecture 5.3 Video Slides Notes
Lecture 5.4 Video Slides Notes
Lecture 5.5: Review

HW 5.1 (due June 15, 5pm)
HW 5.2 (due June 18, 2pm)


Week 6

Term project week.
Click here for the term project gallery.


Valid CSS! Valid XHTML 1.0 Strict