Unit 3 Sections 12-13
Developing and Writing Procedures Lesson
Calling Procedures
Slide 1
- A ___ is a named group of programming instructions that may have parameters and return values.
 - Procedures are referred to by different names, such as ___ or ___, depending on the programing language.
 - Parameters are input values of a procedure. ___ specify the values of the parameters when procedure is called.
 - A procedure call interrupts the ___ execution of statements causing the program to execute the statements within the procedure before continuing. One the last statement in the procedure (or a return statement) has executed, flow or control is returned to the point immediately following where the procedure was ___.
 
Slide 2
- When calling procedures, it's important to take notice to whether it returns data, or a block of ___.
 - If the procedure just returns a block of statements, you call the procedure by referring to the procedure name, and ___ the arguments.
 - If the procedure returns some sort of data like a __ or ___, then you will assign that value to a variable
 
Slide 3:
- Assume the Temperature outside is Fahrenheit.
 - The procedure convertFahrenheit is intended to convert from Fahrenheit to Celsius.
 
def convertFahrenheit():
    # code goes here
Developing Procedures
Slide 8:
Picking a ___ name is important in case you revisit the code later on (separate words with capitals) There are 2 different types of procedures- ones that return a value and those that simply execute a block of statements Steps of developing procedure: picking a useful name, thinking of parameters (what data does the procedure need to know), making a flowchart or writing procedure in pseudocode, and actually developing the procedure.
Slide 9:
In this example, a teacher is writing a program that will replace the grade on a previous quiz if the new grade is better than the previous.
- What would be a good name for this procedure?
 - What parameters do we need for this procedure?
 - Try writing this procedure out in python based on the pseudocode
 
Procedural Abstraction
- One type of abstraction is __ abstraction which provides a name for a process and allows a procedure to be used only knowing what it does and not how it does it
 - This is very helpful in managing __ in a program
 - Subdivision of a program into separate subprograms is called __
 - A procedural abstraction may extract shared features to generalize functionality instead of duplicating code. This allows for program reuse, which helps manage complexity
 - When a pre-written procedure is called, you don’t necessarily need to know the details of this, just what it does and how to call it
 - Simply, procedural abstraction is naming and calling a prewritten procedure
 - Making sure to include the right arguments so the procedure can do what its supposed to do is crucial
 
Hacks
- Write a python procedure about something which can help you in school, for example the teacher’s function we spoke about earlier.
 - Points will be awarded based on creativity and functionality
 - 0.1 points will be deducted for late submissions
 - Submit the notes with all blanks filled in (scored out of 0.5 points) and the python procedure (scored out of 0.5 points) by Monday 12/12 at 11:59 PM.