CMPU 101 § 55

Computer Science I: Problem-Solving and Abstraction

Spring 2019

Monday & Wednesday, 9:00–10:15 a.m.
Friday, 1:00–3:00 p.m.
Sanders Physics 309

Prof. Jonathan Gordon

Student coach: Kyle Patterson

Office hours, Asprey Lab:
Monday 2:00–4:00 p.m.
Wednesday 12:15–1:15 p.m.
Thursday 7:30–9:30 p.m.
Sunday 6:30–8:30 p.m.

Calendar

The calendar on this page will be updated throughout the semester with readings, assignments, labs, and exams. Schedule a reminder to check it after each class.

Week Monday Wednesday Friday

3

Feb. 11

Class: Recursion on flat lists

Reading: Hunsberger, 12.
Optional reading: Springer & Friedman, 2.4–2.5.

Feb. 13

Class: Recursion on integers

Assignment 2.

Feb. 15

Quiz 2

Lab 3 (Solutions)

2

Feb. 4

Class: Procedural abstraction (continued), data types, predicates

Reading: Hunsberger, 9–11.
Optional reading: Springer & Friedman, 2.3.

Feb. 6

Class: Conditional expressions

Assignment 1 (Solutions)

Download: asmt-helper.scm

Feb. 8

Lab 2 (Solutions)

1

Jan. 28

Class: Evaluating expressions; defining variables; lists of data

Reading: Hunsberger, 1–5.
Optional reading: Springer & Friedman, Foreword, Preface, and 1.1–1.5.

Jan. 30

Class: Lists of data (continued); procedural abstraction; defining procedures

Reading: Hunsberger, 6–8.
Optional reading: Springer & Friedman, 2.1–2.2.

Feb. 1

Quiz 1: Solutions

Lab 1 (Solutions)

0

Jan. 21

❄️

Jan. 23

Class: Introduction

Handout: Syllabus

Optional reading: Bad at math?

Jan. 25

Lab 0

Optional reading

Springer & Friedman

Optional readings will be assigned from Scheme and the Art of Programming by George Springer and Daniel P. Friedman. This book can be borrowed from the Internet Archive.

Reference