Inscription / Connexion Nouveau Sujet
Niveau première
Partager :

python lancer de dé

Posté par
azertyuos
22-09-19 à 16:13

bonjour, j'aimerais bien avoir de l'aide pour un exercice sur python que je ne comprend pas. " écrire une fonction qui lancera un dé jusqu'à obtenir 6. Elle renverra le nombre de lancer nécessaire" merci de votre aide.

Posté par
Glapion Moderateur
re : python lancer de dé 22-09-19 à 23:21

Le principe :


compteur = 1
Tant que le dé n'est pas égal à 6,
   je fais un nouveau tirage
    j'augmente mon compteur de 1
fin tantque
j'affiche le compteur

Posté par
pzorba75
re : python lancer de dé 23-09-19 à 11:15

Je trouve plus programmation orientée Python :
compteur=1
de=random-entier(1,6)
tant-que de <>6
           de=random-entier(1,6)
           compteur=compteur+1
fin tant-que
Afficher compteur

La variable entière de est définie avant la boucle tant-que. La fonction random-entier peut être définie avec une fonction Python retournant un entier entre 1 et 6, sans préciser comment.

Posté par
lionel52
re : python lancer de dé 23-09-19 à 11:58

Une variante :


def simulation_de() :
      compteur = 1
      while True : 
            lancer_de = fonction_random()
            if lancer_de == 6 : break
            compteur+=1
      return compteur


Avec fonction_random, tu peux la définir de différentes façons, mais tu peux utiliser la fonction

numpy.random.randint(1,6+1)


ou

random.randint(1,6)


(Dans un cas le point final 6 n'est pas atteignable donc tu vas jusqu'à 7, dans l'autre cas si)


ou, si tu connais que rand() qui définit un nombre aléatoire entre 0 et 1 :

def fonction_random() : return int(6*random.rand()) + 1

Posté par
carpediem
re : python lancer de dé 23-09-19 à 14:00

salut

les break sont à éviter ... et on peut s'en passer sans pb ...

ton algo est très lourd

def de()
   return "entier entre 1 et 6"

def simul ()
    compteur = 0
    while de() <> 6
        compteur +1=
    return compteur


est tellement plus mieux bien et simple

Posté par
alb12
re : python lancer de dé 23-09-19 à 17:09

salut,
Avoir de l'aide ne signifie pas donner la reponse

Posté par
carpediem
re : python lancer de dé 23-09-19 à 17:37

je suis bien d'accord ... mais tu avais déjà tout donné (en français) et je n'ai que traduit ...

et surtout je voulais intervenir sur l'intervention de lionel52 et son algo qui me semble bien "alambiqué"

Posté par
alb12
re : python lancer de dé 23-09-19 à 18:13

c'est Glapion qui a fait l'algo

Posté par
carpediem
re : python lancer de dé 23-09-19 à 18:44

pardon !!

Posté par
alb12
re : python lancer de dé 23-09-19 à 18:50

de rien



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1675 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !