Ludium
Sign In
Introduction to Computational Thinking and Data Science
Optimization
01Optimization Models and the Knapsack Problem02Brute-Force Knapsack and the Exponential Power Set03Greedy Algorithms: One Function, Any Definition of Best04Lambda Keys and Why Greedy Can Miss the OptimumProblem setMIT problem set
01The Knapsack Search Tree: Every Combination, 2ⁿ Nodes02Recursive maxVal: An Exhaustive Search That Beats Greedy03Memoization: Turning Slow Fibonacci into fastFib04Overlapping Subproblems and the Memoized KnapsackProblem setMIT problem set
Graph Models
01Graphs as Models: Nodes, Edges and Euler's Seven Bridges02Coding a Graph in Python: Node, Edge, Digraph and Graph03Depth-First Search for the Shortest Path in a Graph04Breadth-First Search: A Queue of Paths, Fewest Hops FirstProblem setMIT problem set
Stochastic Thinking
01Predictive Nondeterminism and the Stochastic Die Roll02Probability as Counting, and When Multiplying Fails03Simulating Rare Events: Random Seeds and Many Trials04The Birthday Problem: Formula Versus SimulationProblem setMIT problem set

Predictive Nondeterminism and the Stochastic Die Roll

If two coins already lie hidden under a hand, is the result random, and when must a rollDie function really use random.choice?


Finger exercises

Short drills on what this video just taught. Write the code, run the checks, and reveal the answer only if you are stuck.

0 / 5 passed
Exercise 1 of 5

A die roll that meets Spec 2

Implement the second specification from the video: rollDie() returns a randomly chosen int between 1 and 6, each face equally likely. Use the random module. Define rollDie().

1
2
3
4
5
6
7
import random

def rollDie():
    """returns a randomly chosen int between 1 and 6"""
    return ...  # your code here

Python runs in your browser
⌘/Ctrl + Enter runs
?
returns an int from 1 to 6
?
every face turns up
?
faces are roughly equally likely
←Previous Breadth-First Search: A Queue of Paths, Fewest Hops FirstNext Probability as Counting, and When Multiplying Fails →