15-110 Principles of Computing - Summer Two 2014

Programming Assignment 1 - due Tuesday, July 1 by 9:00AM

All programming assignments require electronic handin. See handin instructions at the end of the assignment. Do NOT email your solutions to your instructor or teaching assistant.

You are responsible for keeping others from viewing your solutions to lab work, problem sets, and programming assignments. To reduce the risk of others viewing your solutions to this assignment. Create a directory (folder) called pa1 within the private directory of you home directory on the andrew system. Place the files you create for this assignment there.

We recommend that you either use the machines in the Gates-Hillman Cluster or remotely access unix.andrew.cmu.edu to do your assignments for this semester. If, however, you use programs installed on your own machine to do the assignments, please, be aware that the default text editor of your operating system may not do the "right thing". In particular, the TextEdit utility on MacOS does not produce plain text files by default. You will probably find it easiest to produce valid text files if you install the gedit program that we use in lab instead. It is available for Windows, Mac OS X, and Linux .

Light-Bot

For this assignment, you will play the Light-bot 2 game in order to solve five puzzles. In the Light-Bot game, puzzles are solved by programming the robot "Lightbot" so that when Lightbot is run, it lights up all of the pulsating blue tiles, turning them to yellow.

Light-Bot 2 contains a set of standard levels (puzzles) divided into four categories: basic, recursion, conditionals, and expert. If you have not already, you should go and play the first few levels in the basic, recursion, and conditionals categories of Light-Bot 2 before proceeding. Rules for programming Light-Bot are given here.

The Puzzles

Solve each of the following puzzles and write your solution in the specified format. Make sure each file is stored as a plain text file with a ".txt" extension.

Even if you solved the puzzle correctly in the Light-bot game, you may have made a mistake translating your solution into textual form. Use the Lightbot format checker to find about "syntax errors," such as misspelled commands, in your program. It will not, however, check whether your program actually solves the puzzle.

  1. (2 pts) Play the first puzzle and write the solution in lightbot1.txt.

  2. (2 pts) Play the second puzzle and write the solution in lightbot2.txt.

  3. (2 pts) Play the third puzzle and write the solution in lightbot3.txt

  4. (2 pts) Play the fourth puzzle and write the solution in lightbot4.txt

  5. (2 pts) Play the fifth puzzle and write the solution in lightbot5.txt

Submit Your Assignment

Create a zip file called pa1.zip that contains the the text files with your solutions: lightbot1.txt, lightbot2.txt, lightbot3.txt, lightbot4.txt, and lightbot5.txt. Submit the zip file for grading using the handin instructions.