4.4 Logo Part I Curriculum Page
Portfolio Reflection Questions:
- Include a screenshot of your app's face drawing, and the code involved, showing the use of a loop and a procedure. You can take a screenshot on most Android devices by pressing the power button and the volume down button and the same time and then emailing the photo from the gallery to yourself, or uploading the image to Google Drive. To practice for the Create task, describe how two of the algorithms (procedures that you wrote) in the code combine to form a bigger algorithm (the drawFace procedure).
- The picture of app's face drawing and code is attached below. Two algorithms in the my code combine to form a bigger algorithm, like in the drawFace procedure. This can be seen by the creation of the face's mouth and eyes procedure, which were already made from the procedure square 20 and the forward command, and then it can be combined with other procedures to create an even bigger procedure, the DrawFace procedure in this case. By having multiple procedures that make up a bigger procedure, it makes the code simpler to manage.
- Can you draw a triangle with this set of Logo commands? Discuss how or why not.
- It would not be able to to draw a triangle with the commands we were given because with the turn, it creates 90 degree angles only. For the triangle, there would need to be angles that are smaller than 90 degrees which isn't possible with the Logo commands.
- Discuss: If you were designing the Logo language, how would you change some of our basic commands so that it would be easy to draw a triangle and easier to draw other shapes -- i.e., what should the basic commands do that would make drawing easier.
- If I was designing the Logo language, I would make some changes to the basic commands so it would be easier to draw and triangle and other shapes by allowing the user to choose the number of degrees that the object (in this case the android) turns and the number of pixels it moves forward.
- What weaknesses do you find in using the procedures (the abstractions) we gave you -- forward, turn -- for drawing simple shapes? How would you change the definitions of these procedures to make it easier to draw shapes? Give a specific example that illustrates how a more powerful set of procedures would improve things.
- Some of the weaknesses in using the procedures that were given include the fact that the turns are only 90 degrees and the android moves 10 pixels at a time. As I explained above, I would put in coding that enables the user to customize the number of degrees for rotation and the number of pixels it moves forward. By enabling this feature, the user would be able to draw various straight sided shapes such as triangles, rhombuses, octagons, etc.