Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

Python

Posté par Profil belboulaaa 20-11-22 à 23:27

Bonjour, j'aurais besoin d'aide pour cet exerice de SNT sur Python:
Écrivez un jeu qui procède ainsi :
➢ la machine choisit un nombre mystère entre 1 et 100 ;
➢ un premier joueur entre un nombre dans la machine ;
➢ un second joueur entre un autre nombre dans la machine ;
➢ la machine dit lequel des deux a été le plus proche du nombre mystère.
Merci d'avance!

Posté par
matheux14
re : Python 20-11-22 à 23:35

Bonsoir,

Qu'as tu essayé ?

Posté par Profil belboulaaare : Python 20-11-22 à 23:44

J'ai mis ca mais ca me sort toujours que le joueur 1 est le plus proche meme si je lui met 700 et je met au joueur 2  le nombre 3
import random
random.randit1,100)
A=float(input("Le joueur 1 entre un nombre entre 1 et 100"))
B=float(input("Le joueur 2 entre un nombre entre 1 et 100"))
if A:=random:
    print("Le joueur 1 a le nombre le plus proche")
else:
    print("Le joueur 1 a le nombre le plus proche")

Posté par
matheux14
re : Python 20-11-22 à 23:49

Tu auras besoin de faire :

import random
pour générer les nombres de façon aléatoire.

Puis définir une classe  joueur :

class joueur:
    def __init__(self, vies, pseudo):
        self.*** = ***
        self.*** = ***


Ensuite une classe pour faire jouer chaque joueur :

    
def jouer(self):
        appreciation = "?"
        n = random.randint(0, 100)
        vies = 10
        while self.vies > 0:

            message = appreciation + " -- " + self.pseudo + " : " + str(self.vies) + " vies restantes. Nombre choisi : "
            var = int(input(message))
            if var < n :
                appreciation = "trop bas"
                print(vies, var, appreciation)
            else :
                appreciation = "trop haut"
                print(vies, var, appreciation)
            if var == n:
                appreciation = "bravo !"
                print(vies, var, appreciation)
                break

            self.vies -= 1

Posté par Profil belboulaaare : Python 20-11-22 à 23:52

Merci beaucoup Monsieur bonne soirée!!

Posté par
matheux14
re : Python 20-11-22 à 23:52

# Initialisation des deux joueurs

j1 = joueur(***, "joueur 1")
j2 = joueur(***, "joueur 2")

# j1 et j2 jouent

j1.***()
j2.***()


Essaie de comprendre le code, ainsi tu pourras compléter les étoiles puis exécuter le code.

Posté par
Leile
re : Python 21-11-22 à 00:01

matheux14,
je doute que belboulaaa, en début de seconde ait déjà vu tout ce que tu lui proposes.
Je me trompe peut-être ...


belboulaaa, voici une autre façon de faire, sur la base de ce que tu as fait ; je traduis ce que tu as écrit :
if A!=random:
    print("Le joueur 1 a le nombre le plus proche")
else:
    print("Le joueur 1 a le nombre le plus proche")

si A différent de random,
            afficher "le joueur 1 est le plus proche".
sinon
           afficher "le joueur 1 est le plus proche".
donc, tu affiches toujours la même chose...


dans nombre_mystère, range le nombre donné par randint
ensuite compare (en valeurs absolues)  les différences
A - nombre_mystère   et   B- nombre_mystère.

Posté par
Leile
re : Python 21-11-22 à 00:03

belboulaaa,
fais attention : le prog proposé par matheux14 ne correspond pas à ton énoncé...
Je suppose que tu l'avais vu.

Posté par
malou Webmaster
re : Python 21-11-22 à 18:09

belboulaaa

attentionextrait de c_faq la FAQ du forum :

Q29 - Avoir plusieurs comptes est-il autorisé ?

attentionextrait de c_faq la FAQ du forum :

Q30 - J'ai été averti ou banni, pourquoi, et que faire ?



ferme 2 comptes et reprends ton compte d'origine



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 1681 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 !