These exercises are about logical operators and reading/writing from Session 2.
Exercise 1 - If Else
## It's a negative number!
## It's not a negative number!
## It's a negative number!
x=-1
if x<0:
print("It's a negative number!")
elif x==0:
print("It's zero")
else:
print("It's a positive number!")## It's a negative number!
x=0
if x<0:
print("It's a negative number!")
elif x==0:
print("It's zero")
else:
print("It's a positive number!")## It's zero
x=1
if x<0:
print("It's a negative number!")
elif x==0:
print("It's zero")
else:
print("It's a positive number!")## It's a positive number!
Hint1: x will likely be an integer so it will need to be coerced to print out as part of a message string. Hint2: The modulus operator may be useful here i.e. x%2 returns the remainder after the value of x is divided by 2.
x=1
if x%2==0:
mymessage = str(x) + " is even"
print(mymessage)
else:
mymessage = str(x) + " is odd"
print(mymessage)## 1 is odd
x=42
if x%2==0:
mymessage = str(x) + " is even"
print(mymessage)
else:
mymessage = str(x) + " is odd"
print(mymessage)## 42 is even
def even_or_odd(x):
if x%2==0:
mymessage = str(x) + " is even"
print(mymessage)
else:
mymessage = str(x) + " is odd"
print(mymessage)
even_or_odd(10)## 10 is even
## 3 is odd
## 10007 is odd
Exercise 2 - Loops
# Idea
Each iteration of a loop I want to multiply my factorial by itself:
x=1 result_1 = 1
x=2 result_2 = result_1*x = 2*1
x=3 result_3 = result_2*x = 3*2*1
x=4 result_4 = result_3*x = 4*3*2*1
etc...
# Pseudocode
for 0 to 9:
if x is 0:
create an object and set its value to 1
else:
once we are past the first data point we can multiply factorialAnswer by the iteration we are on. Then overwrite factorialAnswer with this result. for x in range(9):
if x == 0:
factorialAnswer = 1
else:
factorialAnswer = factorialAnswer * (x+1)
factorialAnswer## 362880
factorialAnswer = 0
count = 0
while factorialAnswer <= 1000:
if count == 0:
factorialAnswer = 1
else:
factorialAnswer = factorialAnswer * (count+1)
count = count+1
count## 7
## 5040