Lesson 3.17
Hacks
- Experiment definition: procedure undertaken to make a discovery, test a hypothesis, or demonstrate a known fact
So, why use a simulation?
-
Advantages:
- Can be safer
- More cost-effective
- More efficient
- More data in less time
-
Disadvantages:
- Not as accurate as experiments
- outside factors not included (ex: in rolling dice simulation gravity and air resistance)
- When do you not use a simulation?
- when a situation already has set results/data (won't change)
- examples: a score in a game, most purchased food, average yearly wage
questions_number = 6
answers_correct = 0
questions = [
"True or False: Simulations will always have the same result. \n A: True, \n B: False",
"True or False: A simulation has results that are more accurate than an experiment \n A: True, \n B: False",
"True or False: A simulation can model real world events that are not practical for experiments \n A: True, \n B: False",
"Which one of these is FALSE regarding simulations \n A: Reduces Costs, \n B: Is safer than real life experiments, \n C: More Efficient, \n D: More accurate than real life experiments",
"Which of the following scenarios would be the LEAST beneficial to have as a simulation \n A: A retail company wants to identify the item which sold the most on their website, \n B: A restaurant wants to determine if the use of robots will increase efficiency, \n C: An insurance company wants to study the impact of rain on car accidents, \n D: A sports car company wants to study design changes to their new bike design ",
"Which of the following is better to do as a simulation than as a calculation \n A: Keeping score at a basketball game, \n B: Keeping track of how many games a person has won, \n C: Determining the average grade for a group of tests, \n D: Studying the impact of carbon emissions on the environment"
]
question_answers = [
"B",
"B",
"A",
"D",
"A",
"D"
]
print("Welcome to the Simulations Quiz!")
def ask_question (question, answer):
print("\n", question)
user_answer = input(question)
print("You said: ", user_answer)
if user_answer == answer:
print("Correct!")
global answers_correct
answers_correct = answers_correct + 1
else:
print("You are incorrect")
for num in range(questions_number):
ask_question(questions[num], question_answers[num])
print("You scored: ", answers_correct, "/6")
def parse_input(input_string):
if input_string.strip() in {"1", "2", "3","4", "5", "6", "7", "8", "9", "10"}:
return int(input_string)
else:
print("Please enter a number from 1 to 10.")
raise SystemExit(1)
import random
def roll_dice(num_dice):
roll_results = []
for _ in range(num_dice):
roll = random.randint(1, 10)
roll_results.append(roll)
return roll_results
num_dice_input = input("How many dice do you want to roll? [1-10] ")
num_dice = parse_input(num_dice_input)
roll_results = roll_dice(num_dice)
print("you rolled:", roll_results)
Here in the dice roll, I changed the amount of sides the dice had. So instead of a six-sided die, I changed the values to make it a 10-sided die.
Use these guiding questions for a simulation:
- What makes it a simulation?
- What are it’s advantages and disadvantages?
- In your opinion, would an experiment be better in this situation?
Hack #1 (0.3)
- Create an idea for a simulation and describe it (you don’t actually have to code it just think about/answer the guiding questions).
Hack #2 (0.1)
- Simulations Quiz (either screenshot or paste quiz in your notebook)
Hack #3 (0.2)
- Describe the rolling dice simulation (answer guiding questions)
Hack #4 (0.3)
- Add a feature onto the rolling dice simulation above
- ex: a 14-sided dice or expand the purpose of the simulation (hint: use conditionals to make dice part of a game/real life situation)
Extra Credit (0.1)
- For the extra 0.1: try coding a simple simulation and describe it (guiding question)