Carleton Summer Teaching Institute: Computer Science A

Welcome to the Carleton Summer Teaching Institute for Computer Science! Participants in this workshop have considerable variation in levels of experience, so I've laid out activities here by a rough order of how you might cover them in a class. If you're new to Java or AP, you'll want to start with the first activity and work forward from there. If you have experience and want to jump ahead, feel free.

Links

Getting started: warmups and arithmetic

String processing

String processing + object-oriented basics (modifying code)

Object-oriented programming basics (writing own code from scratch)

Here are three different assignments involving creating your own classes. The first one is more straightforward than the other two. If you're new to AP or Java, start with the first one. If you're more experienced, choose one of the other two based on which one seems like it might be more fun to do.

Loops, arrays, string processing + object-oriented basics

Inheritance

Two-dimensional arrays, inheritance, and image processing

Object-Oriented Design and Associated Algorithms

Recursion, Sorting, and Searching

Data Structures Assignments (more advanced stuff)