Overall Takeaways

  • Procedures: named group of programming instructions w/ parameters/return values
    • Also known as function
  • Procedure is basically a group of steps which are assigned to accomplish a specific task
    • Ask yourself: What are you trying to accomplish, how will I accomplish that
  • Since procedures are named, you can simply just write the name of said procedure to call back to those lines of code

Prompt #1 (hackathon, I did this one for my group)

PROCEDURE reachGoal()

  • MOVE_FORWARD()
  • MOVE_FORWARD()
  • ROTATE_LEFT()
  • MOVE_FORWARD()
  • MOVE_FORWARD()
  • MOVE_FORWARD()
  • MOVE_FORWARD()
  • MOVE_FORWARD()
  • MOVE_FORWARD()
  • ROTATE_RIGHT()
  • MOVE_FORWARD()
  • MOVE_FORWARD()
  • MOVE_FORWARD()

Hacks

3.12 Part 1

Problem 1: Total Time/Total Distance ​

  • Highlight which of these is the best procedure for calculating and displaying average speed.
    • PROCEDURE calcAvgSpeed (distance, time) { DISPLAY (distance/time) }
    • PROCEDURE calcAvgSpeed (distance) { DISPLAY (distance/time) }
    • PROCEDURE calcAvgSpeed (distance, time) { DISPLAY (time/distance) }

Problem 2: I think it’s true that nothing will be displayed as the procedure never tells anything to be displayed. If it said DISPLAY (myEmotion) then something would be displayed

Problem 3: Which of these code snippets successfully calculates and stores her total footprint? Highlight 2 answers.

  1. totalFootprint ← calcFlightFootprint(2451, 118) + calcFlightFootprint(3442, 252)

  2. totalFootprint ← calcFlightFootprint(2451, 118 + 3442, 252)

  3. totalFootprint ← calcFlightFootprint((2451, 118) + (3442, 252))

  4. laNyCarbon ← calcFlightFootprint(2451, 118) nyLondonCarbon ← calcFlightFootprint(3442, 252) totalFootprint ← laNyCarbon + nyLondonCarbon

3.12 Part 2:

  1. a = 9*81 = 729

  2. cost = 1.1*173 = 190 3/10

  3. Celsius = 71*5/9 = 39 4/9

3.13

    • PROCEDURE replaceRB (toprbyardspg, currentrbyards, totalGames)
    • currentrbyardspg ⟵ currentrbyards / totalGames
    • IF currentrbyardpg > toprbyardspg
      • toprbyardspg⟵currentrbyards

If we were to run this procedure with the numbers listed, toprbyardspg would become 105, as that is the currentrbyardspg

  1. PROCEDURE reachGoal():
    • ROTATE_RIGHT()
    • MOVE_FORWARD()
    • ROTATE_LEFT()
    • MOVE_FORWARD()
    • MOVE_FORWARD()
    • ROTATE_RIGHT()
    • MOVE_FORWARD()
    • MOVE_FORWARD()
    • MOVE_FORWARD()
    • MOVE_FORWARD()
    • ROTATE_LEFT()
    • MOVE_FORWARD()
    • MOVE_FORWARD()
    • ROTATE_LEFT()
    • MOVE_FORWARD()
    • MOVE_FORWARD()
    • ROTATE_RIGHT()
    • MOVE_FORWARD()
    • ROTATE_LEFT()
    • MOVE_FORWARD()
    • MOVE_FORWARD()
  2. b. PROCEDURE MyList is correct because “procedure” is capitalized but the name of it isn’t

  3. PROCEDURE reachGoal():
    • MOVE_FORWARD()
    • ROTATE_LEFT()
    • MOVE_FORWARD()
    • ROTATE_RIGHT()
    • MOVE_FORWARD()
    • MOVE_FORWARD()
    • MOVE_FORWARD()
    • MOVE_FORWARD()
    • MOVE_FORWARD()
    • ROTATE_LEFT()
    • MOVE_FORWARD()
    • MOVE_FORWARD()