Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Programme python




  1. #1
    leon266

    Programme python

    Bonjour, je dois réaliser un programme, je l'ai fais mais il me marque erreur je ne sais pas pourquoi pouvez-vous m'aider svp? merci d'avance

    voici l'énonce :
    une urne contient 3 boules noires et 2 blanches. un joueur en extrait une boule. si elle est blanche, il l'enlève, sinon il la remet dans l'urne. il renouvelle les tirages sais s'il n'y a plus de boules blanches.
    soit X la variable aléatoire égale au nombre de tirages effectués avant l'arrêt.

    réaliser deux fonctions qui permettent de faire la simulation de l'expérience qui permettent d'obtenir la moyenne des valeurs de X pour les échantillons de taille 2000 et 5000.

    Voici mon travail :
    Code:
    import random
    def tirage():
        x=0
        b=0
        while b!=1:
            if random.randint(1,5)>3:
                b=b+1
            x=x+1
        while b!=2:
            if random.randint(1,4)>3:
                b=b+1
            x=x+1
        return x
    
    def echantillon(n):
        n= 1000
        s=0 
        while n!=N:
            s=s+tirage()
            n=n+1
        return s/N
    
    
    print (echantillon(n))

    -----

    Dernière modification par JPL ; 04/02/2019 à 17h41. Motif: Ajout de la balise Code (#) pour garder l'indentation

  2. Publicité
  3. #2
    polo974

    Re : Programme python

    Bonjour, je dois réaliser un programme, je l'ai fais mais il me marque erreur je ne sais pas pourquoi pouvez-vous m'aider svp? merci d'avance
    une erreur ? ? ? quelle erreur ? ? ?

    en général, le type d'erreur et la ligne sont indiqués...


    Code:
     def echantillon(n):
        n= 1000
    à quoi ça sert de passer n pour l'écraser ? ...

    Code:
         while n!=N:
    il vient d'où le grand N ?


    Code:
     print (echantillon(n))
    il vient d'où le petit n ?

    il faut utiliser les balises code pour ne pas perdre les indentations (en édition avancée bouton # ).
    et utiliser la prévisualisation...
    Code:
    import random
    def tirage():
        x=0
        b=0
        while b!=1:
            if random.randint(1,5)>3:
                b=b+1
            x=x+1
        while b!=2:
            if random.randint(1,4)>3:
                b=b+1
            x=x+1
        return x
     
    def echantillon(n):
        n= 1000
        s=0 
        while n!=N:
            s=s+tirage()
            n=n+1
        return s/N
     
     
    print (echantillon(n))
    Daudet, tu vas nous manquer...

  4. #3
    polo974

    Re : Programme python

    5 jours plus tard...
    Daudet, tu vas nous manquer...


  5. #4
    Ikhar84

    Re : Programme python

    Salut Polo,
    dernière activité: 04/02/2019 11h33
    ...
    J'ai glissé Chef !

  6. #5
    Jiav

    Re : Programme python

    Code à visée pédagogique: (assume que le primoposteur est out et que les futurs lecteurs sont in)

    Code:
    from random import randint as nameit	% one can choose the name 
    
    def is_blanche(b, n):			% inserting french words might start a "marronnier" (about style of writings)
    	return nameit(1, b + n) > n 			% True or False at random, according to a probability
    	                                        	% distribution that should match "PROBLEM DESCRIPTION :" 
    def tirage(b, n, t = 0):		% initialise t but only if t is not found 
    	while b > 0:					% "As long as at least one white ball remains in the bag	,				
    		t += 1 					% (always) increment t	,
    		b -= 1 if is_blanche(b, n) else 0	% decrement (or not) b	,
    	return t					% when the bag is full of black balls only return the number of picks." 
    
    def echantillon(n, m = 0):		% consistent styles help readability	% list comprehensions are cool 
    	m = m + tirage(2, 3) for i in range(n)			
    	return m / n
    
    print('res(2000) = ', echantillon(2000), '; res(5000) = ', echantillon(5000))
    (incluant les éventuelles erreurs de compilations...)
    Dernière modification par Jiav ; 11/02/2019 à 16h18.
    almost on strike

  7. A voir en vidéo sur Futura
  8. #6
    Fustigator

    Re : Programme python

    Citation Envoyé par Jiav Voir le message
    Code à visée pédagogique
    A voir, vu la motivation du PO :
    Dernière activité 04/02/2019 11h33

  9. #7
    Jiav

    Re : Programme python

    ...raison pour laquelle j'écrivais (assume que le primoposteur est out et que les futurs lecteurs sont in)

    Question ouverte: vaut-il mieux la version précédente ou la version suivante?

    Code:
    from random import randint
    
    def tirage(b, n, t = 0):						
    	while b > 0: b, t += -1 if randint(1, b + n) > n else 0, 1 								
    	return t	
    
    def echantillon(n, m = 0):		
    	m = m + tirage(2, 3) for i in range(n)			
    	return m / n
    
    print('res(2000) = ', echantillon(2000), '; res(5000) = ', echantillon(5000))
    almost on strike

  10. Publicité

Discussions similaires

  1. [Python] Problème de lag de programme et essai de Timer python
    Par Loupsio dans le forum Programmation et langages, Algorithmique
    Réponses: 20
    Dernier message: 26/01/2018, 16h14
  2. Programme Python
    Par coockie13 dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 29/01/2017, 08h50
  3. [Python] subprocess, lancer un autre programme avec python
    Par Loupsio dans le forum Programmation et langages, Algorithmique
    Réponses: 10
    Dernier message: 30/11/2016, 19h56
  4. Programme en python
    Par Isis-mirka dans le forum Programmation et langages, Algorithmique
    Réponses: 16
    Dernier message: 01/12/2014, 22h29
  5. Programme en Python
    Par dj_titeuf dans le forum Logiciel - Software - Open Source
    Réponses: 7
    Dernier message: 19/09/2011, 20h14