Evaluating process: Difference between revisions
Mr. MacKenty (talk | contribs) No edit summary |
Mr. MacKenty (talk | contribs) |
||
Line 33: | Line 33: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
If we were to evaluate this process, we would | If we were to evaluate this process, we would stop at '''each line of execution''' the value of each variable (score1 and score2). We would then ask ourselves: | ||
# If score1 is higher than score2, would the program output score1 is the winner? | # If score1 is higher than score2, would the program output score1 is the winner? |
Revision as of 20:48, 15 July 2017
You must evaluate if the sequence of activities (or instructions) will result in the required outcomes. This evaluation can be logical, arithmetic, or both.
A common scenario is evaluating the order of conditionals. You must become very good at tracing conditional expressions.
You should remember your order of operations:
In mathematics and computer programming, the order of operations (or operator precedence) is a collection of rules that reflect conventions about which procedures to perform first in order to evaluate a given mathematical expression.[2] The mathematical order of operation is: PEMDAS (Parentheses, Exponents, Multiplication, Division, Addition, Subtraction).
How to evaluate a process[edit]
Use a step-by-step process and trace the value of a variable or value. Ask yourself, at each step in the process, what is the current value or state of a variable. Let's look at some examples.
Example[edit]
Imagine you are writing a simple computer program which must output the winner of a game. A winner is determined by the highest numerical score (int). The input is two scores. The output must be only one of the scores below:
- The first score is the winner
- The second score is the winner
- There is a tie
def whoIsTheWinner(score1, score2):
if score1 > score2:
winner = "The first score is the winner"
elif score2 > score1:
winner = "The second score is the winner"
else:
winner = "There is a tie"
return winner
If we were to evaluate this process, we would stop at each line of execution the value of each variable (score1 and score2). We would then ask ourselves:
- If score1 is higher than score2, would the program output score1 is the winner?
- If score2 is higher than score1, would the program output score2 is the winner?
- If both scores are the same, would the program output there is a tie?
Do you understand this?[edit]
Standards[edit]
- Evaluate whether the order in which activities are undertaken will result in the required outcome.