# -*- coding: utf-8 -*-
"""
Created on Sat Jun 15 13:16:28 2024

@author: franc
"""

import numpy.random as rd

# Question 1.
def simul_X(n,p):
    l=[]
    c=0
    for k in range(n):
        x=rd.randint(1,p+1)
        if x not in l:
            l.append(x)
            c+=1
    # print(l)
    return c
    
# Question 3.b.
print()
print()
print('3.b. Pour n=10 et p=20')

# On va faire une moyenne sur 1000 répétitions de l'expérience.
n=10
p=20
s=0
for k in range(1000):
    s+=simul_X(n,p)
print('moyenne observée:',s/1000)
print('moyenne théorique:',p*(1-(1-1/p)**n))

print()
print()
print('pour n=10 et p=100')
n=10
p=100
s=0
for k in range(1000):
    s+=simul_X(n,p)
print('moyenne observée:',s/1000)
print('moyenne théorique:',p*(1-(1-1/p)**n))

    
    
    