What is an Algorithm?

An algorithm: a set of instructions that can accomplish a specific task..

An Algorithm Has Three Components

  1. Sequencing: Algorithms do tasks in the order of specification.

img1

  1. Selection: Helps choose two different outcomes based off a decision.

img1

  1. Iteration: If a condition is true, then the code can repeat.

img1

Algorithms Can Be Represented in Two Ways

  1. Flowcharts: Use shapes and arrows to represent the steps of an algorithm.

img1

img1

  1. Pseudocode: A blend of human language and coding format.

Hacks: Jamboard Flowchart

Click on this link for a group activity



Arithmetic Operations

Arithmetic operations exist in most programming languages.

Basic Operations

Subtraction:

  • Represented by “-"
num1 = 2 - 1

Addition:

  • Represented by "+"
num1 = 2 + 1

Multiplication:

  • Represented by “*”
num1 = 2 * 1

Division:

  • Represented by “/”
num1 = 2 / 1

Getting the Remainder:

  • Represented by “MOD” (% in python)
num1 = 5 % 2

Different Uses

Items can be numbers or variables.

Examples:

num1 = 10
num2 = num1 - 25
num3 = 100 * num1
num4 = num1 / num2
num5 = 9 % num4

Order of Operations

Arithmetic operations in programming are performed in the same order as operations in mathematics:

  • Operations in parentheses should be done first.

  • Division and multiplication should be done before addition and subtraction.

  • Modulus works similar to multiplication and division.

Example: Evaluate num1

num1 = 9 % 2 * ( 8 - 2 ) + 8 / ( 6 - 4 )
print(num1)
10.0


Variables

Different Ways Values are Stored in Variables

  1. Numerical value stored in a variable

  2. Value of another variable stored in a variable

  3. Result of an operation stored in a variable

  4. Result of a procedure call stored in a variable

score = 0   # 1
score = newScore    # 2
score = newScore + 2    # 3
avgScore = allscores(20, 60, 80)    # 4

Sequencing is Important!

Changing the order of the steps changes the overall outcome, since every time the value assigned to a variable is changed, it overrides the last value which was assigned to the same variable. That is why it is important to track the value of variables, especially in code where the value is constantly changing.

num1 = 2
num2 = 4
num3 = 6
num1 = num2 + num3      # num1 is now 4 + 6, which is 10
num2 = num1 + num3      # num2 is now (the new num1) 10 + 6, which is 16
# output: num1 = 10, num2 = 16, num3 = 6

VS

num1 = 2
num2 = 4
num3 = 6
num2 = num1 + num3  #num2 is now 8
num1 = num2 + num3  # num1 is now 14
# output: num1 = 14, num2 = 8, num3 = 6

Tracking Variables

Tracking variables is a common question found on AP exams and is an important thing to keep in mind when writing any code. If the value of your variables changes a lot, not accounting for these changes can result in an unwanted outcome.

var1 = 9
var2 = 7
var3 = 2

#var = var1 + 5
#var2 = var1 - var3
#var1 = var2
#var3 = (var1 + var2) / 2
#var2 = 6

print(var1)
print(var2)
print(var3)

Hacks/Homework

Evaluate the variable "result".

Num1 = 50
Num2 = Num1 % 9 + 15
Num3 = Num2 / Num1 + ( Num2 * 2 )
Num4 = Num3 + Num1 / 5 - 10
Result = Num4 - Num2
Num1 = 10
Num2 = Num1 % 3 * 4
Num1 = Num2
Num3 = Num1 * 3
Result = Num3 % 2
valueA = 4
valueB = 90
valueC = 17
valueB = valueC - valueA
valueA = valueA * 10
if valueB > 10:
    print(valueC)
type = "curly"
color = "brown"
length = "short"
type = "straight"
hair = type + color + length
print(hair)


Strings

What is a String?

A String: A string is a collection of characters. What is a character as character can be anything from numbers, letters, spaces, special symbols, etc.

A string is a collection of characters. What is a character as character can be anything from numbers, letters, spaces, special symbols, etc.

Certain procedures may be used with strings and they vary from programming language to language Python examples

len() to find the length of a string

lower() to convert to lowercase

etc. Pseudocode examples

len() returns the length of a string

concat() returns a string made up of the concatenated strings ex. concat("string1", "string2") would return string1string2

substring() returns the characters from the string beginning at the at the first position to the last so an example of this would be substring ("abcdefghijk", 2, 5) would print bcde (pseudocode starts at 1)

String Concatenation

What is string concatenation?

String concatenation is combining 2 or more strings to make a new strings in order to create a new string

concat() in pseudocode and varys from language to language can be used to combine to strings such as concat("cookie","monster") returns cookiemonster

Substrings

What is a substring?

A substring is a part of and already existing string.

In pseudocode substring() method is used for instance for concat("Mr.Mortenson is very handsome" 1, 2) the system would return Mr (remember that pseudocode starts at 1)

Hacks

Find the result of the following problems. Then convert the pseudocode to working python code using your knowledge of python string operators.

Problem 1

Noun = "Mr.Mortenson" 
Adjective = "handsome" 
Adjective2 = "Very" 
Verb = "is" 
abrev = subtring(Noun, 1, 7) 
yoda = concat(Adjective2, " ", Adjective, " ", abrev, " ",Verb, ".") 
display[yoda]

Problem 2

cookie = "choclate" 
cookie2 = "rasin" 
len1 = len(cookie) / 2 
len2 = len(cookie2) * 45 
vote1 = (cookie, "vote", len2) 
vote2 = (cookie2, "vote", len1) 
votes = concat(vote1, " ", vote2) 
display[votes]