Introduction to Computer Science
CompSci 101 : Spring 2014

Developing Algorithms

Last month, during Computer Science Education Week, schools and companies all over the world took time to get people to try an Hour of Code. Five million students committed to participate globally at 33,000 schools in 166 countries, and endorsements by celebrities and public figures including both President Barack Obama and his political foil House Majority Leader Eric Cantor.

Said President Obama, "Don't just buy a new video game, make one. Don't just download the latest app, help design it."

Many people consider programming a computer to be hard, not because it involves learning a new language, with precise, sometimes arcane syntax, but because it involves thinking at a level of detail most people are not used to. Being able to break a task down to its most basic components and explain those to something that does not understand the basic vocabulary you are using is very much like teaching, another task many people consider to be hard. Hopefully, this course will help show you that programming, at least at a basic level, is not too hard :)

The point of these exercises is to get you started thinking about how to solve problems and then break those solutions down to a level that can be explained to a computer unambiguously.

Specification

Complete the following exercises:

  1. Write an algorithm describing how to make a peanut butter and jelly sandwich
  2. Explain how to win at these games
  3. Play the Light-bot game online

It is fine if you cannot complete some of the exercises above, their primary purpose is to get you to think "behind the scenes", to explain how to do something instead of just doing it.

Submission

Submit one document, that includes your answers to all three parts, and a README file electronically using this web form to the assignment name 01_algorithm.