Aller au contenu

Exercice Original mais complexe pour le 30/04/20


angelV

Messages recommandés

Posté(e)

Bonjour à tous,

J'ai reçu plusieurs exos de la part de mon professeur d'Informatique mais je vous avoue que je ne comprends pas grand chose sur cet exo, pourtant de première vue assez simple.

Serait-il possible de m'aider ?

Merci d'avance,

Cordialement.

Exo 1 P1.png

Exo 1 P2.png

  • E-Bahut
Posté(e)

Je ne suis pas sûr d'avoir bien tout compris. J'ai pondu le script ci-dessous pour la partie A. Regarde, critique ou modifie. Je ne suis pas entièrement satisfait de la partie en rouge, j'aurais voulu mettre quelque chose du type

choix_modifie=if choix_conserve=='oui':'non'
else: 'oui'

mais Python a refusé.

Il y a peut-être une syntaxe possible, mais mes connaissances ne vont pas jusque là.

 

import random
def jeu():
    porte=['C','C','V']
    choix_1=random.choice(porte)
    porte=['C','V']
    choix_conserve=random.choice(['oui','non'])
    choix_modifie='oui'
    if choix_conserve=='oui':
        choix_modifie='non'

    parties_gagnees_2_1,parties_gagnees_2_2=0,0
    if choix_conserve=='oui' and choix_1=='V':
        parties_gagnees_2_1=parties_gagnees_2_1+1
    if choix_modifie=='oui' and choix_1=='V':
        parties_gagnees_2_2=parties_gagnees_2_2+1
    return(parties_gagnees_2_1,parties_gagnees_2_2)

 

A demain, peut-être.

  • E-Bahut
Posté(e)

P.S. : En relisant, je vois qu'il y avait une erreur ici

if choix_modifie=='oui' and choix_1=='V':

c'est

if choix_modifie=='oui' and choix_1=='C':

 

Mais après réflexion et un nouveau petit tour sur la toile, je pense que la partie jeu est simplement la suivante :

import random

def jeu():
    porte=['C','C','V']
    choix_1=random.choice(porte)
    porte=['C','V']
    choix_conserve='oui'
    choix_modifie='oui'
    parties_gagnees_2_1,parties_gagnees_2_2=0,0
    if choix_conserve=='oui' and choix_1=='V':
        parties_gagnees_2_1=parties_gagnees_2_1+1
    if choix_modifie=='oui' and choix_1=='C':
        parties_gagnees_2_2=parties_gagnees_2_2+1
    return(parties_gagnees_2_1,parties_gagnees_2_2)

J'ai rajouté dans la foulée la suite. Par contre, je n'ai pas compris comment fonctionnaient les instructions  jeu()[0] et jeu()[1]. Si tu as l'explication, je suis preneur.

def iteration_parties(nombre_parties):
    parties_gagnees_2_1,parties_gagnees_2_2=0,0
    for partie in range(nombre_parties):
        if jeu()[0]==1:
            parties_gagnees_2_1=parties_gagnees_2_1+1
        if jeu()[1]==1:
            parties_gagnees_2_2=parties_gagnees_2_2+1
    return(parties_gagnees_2_1/nombre_parties,parties_gagnees_2_2/nombre_parties)

print(iteration_parties(10000))

Posté(e)

Bonjour,

Désolé pour la réponse si tardive, alors déjà, j'ai bien le même script que vous pour la première partie, j'ai juste eu des pb d'indentation.

Concernant les notations,  l'instruction jeu() renvoi un couple de valeur sous la forme (0, 1) par exemple.
Aussi, l'instruction jeu()[0] correspond à la première valeur du couple renvoyé par l'instruction jeu() soit ici 0, et l'instruction jeu()[1] correspond à la première valeur du couple renvoyé par l'instruction jeu() soit ici 1.
 
Aussi, pourriez-vous me rappeler ce qu'il faut utiliser pour la partie C ? 
  • E-Bahut
Posté(e)

C'est quelque chose de similaire à ce que tu as utilisé dans le fil

Petit pb Python à rendre le 12/04/2020

avec, en particulier, le fameux matplotlib.

Tu regardes et tu vois si tu t'en sors ?

Posté(e)

Ok, je me suis aidé avec le sujet mais mon graphique est surement faux car il me donne une droite croissante...

Je  prends peut-être les mauvaises valeurs ? (pour Abscisse et Ordonné ?)

Je sais seulement que d'un côté j'ai un nombre entier et de l'autre une fréquence ...

  • E-Bahut
Posté(e)

Tel quel, difficile de dire ce qui cloche. Si tu postes le script que tu as pondu, j'essaierai de voir où est le problème.

  • E-Bahut
Posté(e)

Alors, pour moi, le plot doit être à l'extérieur de la fonction iteration. Ci-joint un script qui donne des résultats satisfaisants.

Monty hall.py

Bon, là, je me déconnecte. A demain.

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...
spam filtering
spam filtering