Unit 3.15 Random Values Student Copy
Here is our lesson about random values!
- What are Random Values?
- Why do we need Random Values for code?
- Random values can be used in coding:
- Challenge #1
- Homework
Purpose/Objectives: Teach student how to implement randomness into their code to make their code simulate real life situations.
In this lesson students will learn:
- How to import random to python
- How to use random with a list or number range
- How to code randomness in everyday scenarios
Random Values are a number generated using a large set of numbers and a mathematical algorithm which gives equal probability to all number occuring
Each Result from randomization is equally likely to occur Using random number generation in a program means each execution may produce a different result
What are Examples of Random outputs in the world? Add a few you can think of.
- Ex: Marbles, coin flip, cards, hair colors and genes
import random
random_number = random.randint(1,100)
print(random_number)
def randomlist():
list = ["apple", "banana", "cherry", "blueberry"]
element = random.choice(list)
print(element)
randomlist()
Real Life Examples: Dice Roll
import random
for i in range(3):
roll = random.randint(1,6)
print("Roll " + str(i + 1) + ":" + str(roll))
import random
def coinflip(): # def function
randomflip = random.randint(0, 1) # picks either 0 or 1 randomly (50/50 chance of either)
if randomflip == 0: # assigning 0 to be heads; if 0 is chosen then it will print, "Heads"
print("Heads")
else:
if randomflip == 1: # assigning 1 to be tails; if 1 is chosen then it will print, "Tails"
print("Tails")
# Tossing the coin 5 times:
t1 = coinflip()
t2 = coinflip()
t3 = coinflip()
t4 = coinflip()
t5 = coinflip()
EXTRA: Create a function that will randomly select 5 playing Cards and check if the 5 cards are a Royal Flush
def convert(n):
if n == 0:
print("0")
elif n == 1:
print("1")
else:
binary = "" # define a string "" variable for storing binary digits; calculated below
# divide the number (n) by 2, until it becomes 0, and store the remainder in the above string variable
while int(n) > 0:
binary += str(int(n%2)) # retreive the remainder, and keep appending to the string
n = n / 2 # change the number to its quotient, then repeat
print(binary[::-1]) # now the binary string has all the desired digits, but in reverse order
# :: is how to reverse string
n = random.randint(1,100) # generates random number 1 to 100
convert(n) # perform the function