Select Git revision
INF-TC1-td07.ipynb
-
Romain Vuillemot authoredRomain Vuillemot authored
tirage-remise.py 780 B
from math import *
from random import *
# Simulation d'un tirage avec remise de k objets parmi n
def tirage_uniforme_k_of_n_avec_remise(n,k):
if k > n :
raise ValueError("k (%d) doit être =< que n (%d) " % (k,n))
T=[x for x in range(1,n+1,1)] # On constitue une urne avec p objets
for i in range(k) : # Tirage de k numéros
d=randint(1,n)
# On permute le d-ème élément de l'urne et la derniere
temp=T[d-1]
T[d-1]=T[n-1]
T[n-1]=temp
n=n-1
return T[n:n+k+1]
n=int(input("La valeur de n ? "))
k=int(input("La valeur de k (parmi n) ? "))
try :
print("Le tirage : ", tirage_uniforme_k_of_n_avec_remise(n,k))
except ValueError as err :
print("Error: {0}".format(err))