You are here

Programming Ideas V2

Robart, Chris
Issue Date: 
Tuesday, July 27, 2010
"This is a collection of ideas for exercises, test questions, projects, etc. It is not a collection of exercises, test questions, projects, etc. This collection is meant to be used when the teacher first begins to design an assignment or test and needs some ideas. This collection is no good to the teacher who is in a panic and needs a string exercise for a class starting in five minutes! The ideas span the range of difficulty from simple ideas that could be used in grade 9 (or earlier) to problems that are more appropriate for university. The problems are primarily classic computer science problems or mathematical, with a liberal sprinkling of fractal geometry thrown in for good measure. Some business ideas are included and of course as many games as possible. The rule I use for inclusion is, ""Can I see myself ever using this idea?"". There are close to 600 ideas, many with multiple sub ideas."
sequence, loops, classes, functions, 1D arrays, 2D arrays, recursions
Other Disciplines: 
searching, hashing, linkedlists, stacks, queues, trees, oop, repetition
Education Levels: 
Middle School
High School
Intended Audience: 
Reference Material : Article
CEMCS Summer Institute, Toronto, Ont, CA
CSTA Classification: 


Compare and contrast simple data structures and their uses (e.g., arrays and lists).


Apply analysis, design, and implementation techniques to solve problems (e.g., use one or more software lifecycle models).


Decompose a problem by defining new functions and classes.


Use mobile devices/ emulators to design, develop, and implement mobile computing applications.


Use tools of abstraction to decompose a large-scale computational problem (e.g., procedural abstraction, object-oriented design, functional design).


Object-Oriented Program Design (AP Comp Sci A Topic I)


Evaluate algorithms by their efficiency, correctness, and clarity.


Standard Data Structures (AP Comp Sci A Topic IV)


Standard Algorithms (AP Comp Sci A Topic V)


Use the basic steps in algorithmic problem-solving to design solutions (e.g., problem statement and exploration, examination of sample instances, design, implementing a solution, testing, evaluation).

Download this resource: