Opération dans une variable
fl47dt
-
Sugel Messages postés 4076 Date d'inscription Statut Membre Dernière intervention -
Sugel Messages postés 4076 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Débutant sur python depuis 2-3 jours, je commence à comprendre les bases et aujourd'hui, j'ai voulu recréer "le jeu des allumettes" en langage python.
Mais je suis confronté à un problème :
__________________________________________________
import random
a = "I"*20
RepOrdi = random.randint(1,4)
print("Il y a 20 allumettes, vous allez proposer un nombre entre 1 et 4, ensuite ce sera au tour de l'ordinateur, celui qui enlève la dernière allumette à perdu.")
print(a)
RepUser = int(input("Entrez un nombre entre 1 et 4 :"))
a = "I"*20 - RepUser
___________________________________________________
Vous pouvez voir que sur la dernière ligne, j'ai voulu marquer le nombre d'allumettes MOINS le nombre choisi par l'utilisateur. Par exemple l'utilisateur choisi 2, alors a = "I"*20 - 2, donc "I"*18. Le problème c'est que je ne sais pas comment formuler ça. Je ne sais pas si je me suis bien exprimé mais si vous avez compris, auriez-vous une solution ?
Débutant sur python depuis 2-3 jours, je commence à comprendre les bases et aujourd'hui, j'ai voulu recréer "le jeu des allumettes" en langage python.
Mais je suis confronté à un problème :
__________________________________________________
import random
a = "I"*20
RepOrdi = random.randint(1,4)
print("Il y a 20 allumettes, vous allez proposer un nombre entre 1 et 4, ensuite ce sera au tour de l'ordinateur, celui qui enlève la dernière allumette à perdu.")
print(a)
RepUser = int(input("Entrez un nombre entre 1 et 4 :"))
a = "I"*20 - RepUser
___________________________________________________
Vous pouvez voir que sur la dernière ligne, j'ai voulu marquer le nombre d'allumettes MOINS le nombre choisi par l'utilisateur. Par exemple l'utilisateur choisi 2, alors a = "I"*20 - 2, donc "I"*18. Le problème c'est que je ne sais pas comment formuler ça. Je ne sais pas si je me suis bien exprimé mais si vous avez compris, auriez-vous une solution ?
A voir également:
- Opération dans une variable
- Impossible de terminer l'opération car le fichier contient un virus - Forum Virus
- Impossible de terminer l’opération car virus Win 7 - Forum Virus
- Erreur lors d'une opération de pagination ✓ - Forum Matériel & Système
- Vba range avec variable ✓ - Forum VB / VBA
- L'opération demandée nécessite une élévation ✓ - Forum LibreOffice / OpenOffice
1 réponse
"I"*20 construit une chaîne de caractères, tu ne peux pas lui soustraire un nombre. Joue un peu dans l’interpréteur avec les fonctions type, dir et help, ça t'aidera.
import random n = 20 def render(a): print("I"*a) gagne = True print("Il y a 20 allumettes, vous allez proposer un nombre entre 1 et 4, ensuite ce sera au tour de l'ordinateur, celui qui enlève la dernière allumette à perdu.") while n > 0: render(n) n -= int(input("Entrez un nombre entre 1 et 4 :")) if n <= 0: gagne = False break n -= random.randint(1,4) if gagne: print("bravo!") else: print("dommage...")