In: Computer Science
For this problem, complete the function stub to simulate the following random variable: Suppose we have a (possibly) unfair coin where the probability of Head is ? and we flip this coin ? times. Let X = "the number of heads showing."
Demonstrate your solution by generating 105 random variates for the parameters shown and displaying them using show_distribution(...).
STARTER CODE:
# First, create a function which simulates the coin, where
# you return 1 with probability p and 0 with probability 1-p.
N = 10
p = 0.25
num_trials = 10**5
def coinFlip(p):
return 0 # Just to get it to compile
  
def coinFlips(N,p):
return 0 # Just to get it to compile
print("Demonstration:")
seed(0)
I have provided the implementation for these 2 functions. 
Now, you can use show_distribution() method to show the distribution.
SOURCE CODE:
*Please follow the comments to better understand the code.
**Please look at the Screenshot below and use this code to copy-paste.
***The code in the below screenshot is neatly indented for better understanding.
from random import seed, random
N = 10
p = 0.25
num_trials = 10 ** 5
# First, create a function which simulates the coin, where
# you return 1 with probability p and 0 with probability 1-p.
def coinFlip(p):
    # get random number and return 1 if it is less than p
    if random() < p:
        return 1
    else:
        # 0 if it's greater
        return 0
def coinFlips(N, p):
    # take count as 0
    head_count = 0
    # flip coins for N times
    for i in range(N):
        # flip coin
        toss = coinFlip(p)
        # if it's 1, then we have got a head
        if toss == 1:
            head_count += 1
    # return the count
    return head_count
# TEST
print("Demonstration:")
seed(0)
# num_heads = coinFlips(N, p)
# print('Number of heads, X=', num_heads)
=========

