# computer science project 3

Scenario: A robot is sitting in a chair with its arms facing down. Write an algorithm, using pseudocode, to make the robot:

• stand up
• walk until it senses a wall
• turn around
• walk back to the chair
• sit back down in the origin starting position

Finally, output the total number of steps taken.

Commands:

In addition to our standard pseudocode commands, you must also use the following robot control commands:

• sit
• stand
• step (one step forward)
• raise arms (parallel to floor)
• lower arms (pointing to floor)
• sense (only if arms are raised)
• turn (90 degrees right)

Immediately after issuing a sense command, you can check if the robot is at a wall.
You do this via the boolean conditions “at wall” or “not at wall”.
The following are examples of this:

if at wall
if not at wall
while not at wall

Assumptions

You must assume the following facts:

• The robot’s initial sitting position is directly facing the target wall.
• There are no obstacles between the robot and the wall.
• The wall is 1 or more exact steps from the chair.
• The wall is sensed when it is less than 1 step from the robot’s arms.
• The length of the robot’s arms are slightly less than the length of 1 step.

Your solution

Your solution must include all of the following:

• Adequate comments
• Initialization and use of at least one variable
• Sequential flow of control
• Conditional flow of control
• Iterative flow of control
• Handling of any special cases
• Output of the total number of steps taken

Your pseudocode must conform to the course pseudocode guidelines.

Once you have completed the algorithm:

Make sure your comments are detailed enough, someone without any knowledge of algorithms or pseudocode could follow what is happening. Upload the assignment as a text document using the following naming protocol: flast-Project.txt where “flast” is the first letter of your first name followed by your last name.