We are ready to create our magic 8 ball method now. In this challenge, we are going back to the magic 8 ball object we created and adding to it the method you will use to make it work just like a magic 8 ball. You will write pseudocode for your method just like the one we just wrote for the chair method we did in the last challenge. By the end of this challenge, you will have a method and a call to get your method to run.
Let’s get started by setting up the function pseudocode. Underneath your magic 8 ball object, you will want to add the function keyword. Then you will want to name your method.
I’m going to name the one in this example ask question but you can use anything you like for yours. On the next line, we will put the stop keyword at the end of our method. Now it is time to write the instructions.
First, we need to get a question from the user. So the first line in the instruction will be the inputs. Put an input keyword then question. This lets the computer know the user needs to give it a question to start working.
Once the user has given a question, it is time for the magic 8 ball to start working. The second step will be where the magic 8 ball shakes. Underneath the inputs step, I will put that the 8 ball is shaking.
The magic 8 ball now needs to go through the list of answers and randomly pick one to show the user. The 8 ball can’t automatically pick an answer to give the user. It needs a list of answers to reference to and pick from to decide what to display.
After the second step, I will put a line that says the 8-ball picks an answer from the list of answers. We are in the home stretch with this method. The last thing we need to include inside the method is the output.
The output in this method is the answer the computer had picked. Before the stop keyword, I’m going to add the output keyword then answer. This lets the computer know they need to show the user the answer.
The method is done. The last thing we need to do is call our method. Underneath the method, I’m going to call my method using the run function keywords. I call my method using the ask question name.