CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Des Jean codeurs pour m'aider ?

Mouig
Mouig
Niveau 6
31 mai 2020 à 14:32:47

Bon je vous explique, j'ai un "projet" à rendre pour jeudi en informatique (je suis en première) go 15-18 = cancer . https://image.noelshack.com/fichiers/2017/03/1484762204-10.jpg

Voila la consigne:
"Lire et regarder la vidéo sur la page https://pixees.fr/informatiquelycee/n_site/nsi_prem_projet_3.html du site de David Roche.Remarques:
Le fichier dico.txt contient des mots en majuscule. Le joueur pourra entrer des minuscules ou des majuscules (si la lettre A est dans le mot recherché, il faut accepter aussi la lettre a minuscule).
Pour que le joueur puisse proposer une lettre, on utilisera la fonction input qui fera apparaître une fenêtre ("popupwindow"en anglais) dans edupython. Le comportement du jeu sera donc un peu différent de celui de la vidéo, où tout se passe dans la console.
Pour mettre les dessins dans votre code, il suffit de copier-coller le code de la page web dont l'URL est donnée ci-dessus.
Comme toujours, il faut bien penser à toutes sortes de situations: le joueur entre deux fois la même lettre, le joueur entre des minuscules et/ou des majuscules,le joueur indique un caractère qui n'est pas une lettre, le joueur atteint le nombre d'essais autorisés et perd, le joueur gagne."

J'ai moi même tenté quelques essais peu fructueux . https://image.noelshack.com/fichiers/2017/03/1484762204-10.jpg

Mouig
Mouig
Niveau 6
31 mai 2020 à 14:33:56

J'ai oublié de le préciser mais c'est en python. https://image.noelshack.com/fichiers/2017/03/1484762204-10.jpg

-Fleurist-4
-Fleurist-4
Niveau 4
31 mai 2020 à 14:34:06

go -15 :)

Polachek
Polachek
Niveau 10
31 mai 2020 à 14:34:17

J'espère que tu comptes pas faire de l'info si tu galères à faire un bête jeu du pendu :(

KheyEnSueurs
KheyEnSueurs
Niveau 6
31 mai 2020 à 14:34:39

Go -15 le pyj :)

Message édité le 31 mai 2020 à 14:34:48 par KheyEnSueurs
Mouig
Mouig
Niveau 6
31 mai 2020 à 14:35:20

Le 31 mai 2020 à 14:34:17 Polachek a écrit :
J'espère que tu comptes pas faire de l'info si tu galères à faire un bête jeu du pendu :(

https://image.noelshack.com/fichiers/2017/03/1484762204-10.jpg

Polachek
Polachek
Niveau 10
31 mai 2020 à 14:38:36

Montre-nous où t'en es au moins, c'est sur quelle fonctionnalité que tu galères ?

Mouig
Mouig
Niveau 6
31 mai 2020 à 14:41:04

Le 31 mai 2020 à 14:38:36 Polachek a écrit :
Montre-nous où t'en es au moins, c'est sur quelle fonctionnalité que tu galères ?

Je galère à récuperer les mots du fichier dico.txt sans qu'il y ait '/n' au début de chaque mots. https://image.noelshack.com/fichiers/2017/03/1484762204-10.jpg

chauffagiste003
chauffagiste003
Niveau 8
31 mai 2020 à 14:41:07

J'ai hâte de voir la gueule de la l1 d'info :rire:

Sinon tu prend une feuille et tu note les différente chose à faire, genre si le joueur entre caractère autres qu'une lettre tu lui indique une erreur, si il entre une majuscule, tu met cette lettre en minuscule, si la lettre n'est pas présente dans le mot, tu passe au dessin suivant, etc. Après tu code

Polachek
Polachek
Niveau 10
31 mai 2020 à 14:44:27

Le 31 mai 2020 à 14:41:04 MouiG a écrit :

Le 31 mai 2020 à 14:38:36 Polachek a écrit :
Montre-nous où t'en es au moins, c'est sur quelle fonctionnalité que tu galères ?

Je galère à récuperer les mots du fichier dico.txt sans qu'il y ait '/n' au début de chaque mots. https://image.noelshack.com/fichiers/2017/03/1484762204-10.jpg

T'invoques la méthode rstrip() sur un String pour enlever le retour chariot en début ou en fin de chaîne

Si tu fais print("\nANGLE".rstrip()) ça t'affichera ANGLE normalement

Mouig
Mouig
Niveau 6
31 mai 2020 à 14:50:29

Le 31 mai 2020 à 14:44:27 Polachek a écrit :

Le 31 mai 2020 à 14:41:04 MouiG a écrit :

Le 31 mai 2020 à 14:38:36 Polachek a écrit :
Montre-nous où t'en es au moins, c'est sur quelle fonctionnalité que tu galères ?

Je galère à récuperer les mots du fichier dico.txt sans qu'il y ait '/n' au début de chaque mots. https://image.noelshack.com/fichiers/2017/03/1484762204-10.jpg

T'invoques la méthode rstrip() sur un String pour enlever le retour chariot en début ou en fin de chaîne

Si tu fais print("\nANGLE".rstrip()) ça t'affichera ANGLE normalement

Ca marche :)

Mouig
Mouig
Niveau 6
31 mai 2020 à 14:59:06
def lectureFichier():
    listeMots = []
    fichier = open("dico.txt", "r", encoding="utf-8")
    for i in range(1,800):
        contenu = fichier.readline()
        listeMots.append(contenu.rstrip())
    return listeMots

lectureFichier()

Je ne comprend pas pourquoi je ne peux pas utiliser la liste "listeMots" dans d'autres fonctions, la console me dit qu'elle n'est pas définie. https://image.noelshack.com/fichiers/2017/03/1484762204-10.jpg

chouxfleur
chouxfleur
Niveau 52
31 mai 2020 à 15:03:21

J'aimerais bien mais flemme là.

Polachek
Polachek
Niveau 10
31 mai 2020 à 15:03:37

Le 31 mai 2020 à 14:59:06 MouiG a écrit :
def lectureFichier(): listeMots = [] fichier = open("dico.txt", "r", encoding="utf-8") for i in range(1,800): contenu = fichier.readline() listeMots.append(contenu.rstrip()) return listeMots lectureFichier()

Je ne comprend pas pourquoi je ne peux pas utiliser la liste "listeMots" dans d'autres fonctions, la console me dit qu'elle n'est pas définie. https://image.noelshack.com/fichiers/2017/03/1484762204-10.jpg

Parce que ta variable listeMots est locale à ta fonction lectureFichier, si tu veux l'utiliser dans tout ton "programme" (en tant que variable globale), déclare la en dehors de ta fonction

Cf http://lptms.u-psud.fr/wiki-cours/index.php/Python:_Port%C3%A9e_des_variables

Message édité le 31 mai 2020 à 15:03:52 par Polachek
Mouig
Mouig
Niveau 6
31 mai 2020 à 15:08:19

Le 31 mai 2020 à 15:03:37 Polachek a écrit :

Le 31 mai 2020 à 14:59:06 MouiG a écrit :
def lectureFichier(): listeMots = [] fichier = open("dico.txt", "r", encoding="utf-8") for i in range(1,800): contenu = fichier.readline() listeMots.append(contenu.rstrip()) return listeMots lectureFichier()

Je ne comprend pas pourquoi je ne peux pas utiliser la liste "listeMots" dans d'autres fonctions, la console me dit qu'elle n'est pas définie. https://image.noelshack.com/fichiers/2017/03/1484762204-10.jpg

Parce que ta variable listeMots est locale à ta fonction lectureFichier, si tu veux l'utiliser dans tout ton "programme" (en tant que variable globale), déclare la en dehors de ta fonction

Cf http://lptms.u-psud.fr/wiki-cours/index.php/Python:_Port%C3%A9e_des_variables

Merci khey j'avance bien grâce à toi :)
Je posterais dès que je rencontre un problème.

-__Agent_47__-
-__Agent_47__-
Niveau 66
31 mai 2020 à 15:12:40

Go -15 ou Twitter

Mouig
Mouig
Niveau 6
31 mai 2020 à 15:19:51
from random import *

nbEssais = 7
listeMots = []
letter = ""
mot = ""
tab = []
nb = 0

def lectureFichier():
    fichier = open("dico.txt", "r", encoding="utf-8")
    for i in range(1,800):
        contenu = fichier.readline()
        listeMots.append(contenu.rstrip())
    return listeMots

def motTirage(listeMots):
    tirage = randint(1,len(listeMots))
    mot = listeMots[tirage]
    print(mot)

def saisie():
    letter = input()
    return letter

def verifLetter(nb,letter,mot):
    for i in range(1,nbEssais):
        if letter in mot:
            print(tab[nb])
            print("La lettre est correct.")
        else:
            nb += 1
            print(tab[nb])
            print("La lettre est incorrect.")

def dessinPendu(nb):
    tab=[
    """
       +-------+
       |
       |
       |
       |
       |
    ==============
    """,
    """
       +-------+
       |       |
       |       O
       |
       |
       |
    ==============
    """
        ,
    """
       +-------+
       |       |
       |       O
       |       |
       |
       |
    ==============
    """,
    """
       +-------+
       |       |
       |       O
       |      -|
       |
       |
    ==============
    """,
    """
       +-------+
       |       |
       |       O
       |      -|-
       |
       |
    ==============
    """,
    """
       +-------+
       |       |
       |       O
       |      -|-
       |      |
       |
    ==============
    """,
    """
       +-------+
       |       |
       |       O
       |      -|-
       |      | |
       |
    ==============
    """
    ]
    return tab[nb]

def main():
    lectureFichier()
    motTirage(listeMots)
    saisie()
    verifLetter(nb,letter,mot)
    dessinPendu(nb)

main()

Au niveau de la ligne print(tab[nb]) dans la fonction 'verifLetter' la console m'indique une erreur: 'IndexError: list index out of range' :(

Message édité le 31 mai 2020 à 15:23:10 par Mouig
Polachek
Polachek
Niveau 10
31 mai 2020 à 15:23:50

Le 31 mai 2020 à 15:19:51 MouiG a écrit :
from random import * nbEssais = 7 lastLetter = "" listeMots = [] letter = "" mot = "" tab = [] nb = 0 def lectureFichier(): fichier = open("dico.txt", "r", encoding="utf-8") for i in range(1,800): contenu = fichier.readline() listeMots.append(contenu.rstrip()) return listeMots def motTirage(listeMots): tirage = randint(1,len(listeMots)) mot = listeMots[tirage] print(mot) def saisie(): letter = input() return letter def verifLetter(nb,letter,mot): for i in range(1,nbEssais): if letter in mot: print(tab[nb]) print("La lettre est correct.") else: nb += 1 print(tab[nb]) print("La lettre est incorrect.") def dessinPendu(nb): tab=[ """ +-------+ | | | | | ============== """, """ +-------+ | | | O | | | ============== """ , """ +-------+ | | | O | | | | ============== """, """ +-------+ | | | O | -| | | ============== """, """ +-------+ | | | O | -|- | | ============== """, """ +-------+ | | | O | -|- | | | ============== """, """ +-------+ | | | O | -|- | | | | ============== """ ] return tab[nb] def main(): lectureFichier() motTirage(listeMots) saisie() verifLetter(nb,letter,mot) dessinPendu(nb) main()

Au niveau de la ligne print(tab[nb]) dans la fonction 'verifLetter' la console m'indique une erreur: 'IndexError: list index out of range' :(

Les tableaux commencent à 0 en Python (et non à 1 comme en Matlab par exemple :rire: )

Du coup ton index out of range c'est parce que t'essaies à un moment de récupérer l'élément tab[7] alors que ton tableau va de tab[0] à tab[6]

Remplace ton for i in range(1,nbEssais): par for i in range(0,nbEssais-1):

Polachek
Polachek
Niveau 10
31 mai 2020 à 15:27:47

Quoi que j'dis de la merde, for i in range (1,nbEssais) avec nbEssais = 7 ça ira de 1 ... 6, donc remplace par for i in range(0,nbEssais):, mais le problème vient d'autre part, faut que je vois ton code en entier

Message édité le 31 mai 2020 à 15:28:01 par Polachek
Polachek
Polachek
Niveau 10
31 mai 2020 à 15:33:33

C'est quand tu fais
nb += 1 print(tab[nb])
le problème du coup
Au dernier tour de boucle t'as nb := 6, puis tu fais nb+1 donc t'essaies d'afficher tab[7] alors que le dernier élément indexé dans ton tableau c'est tab[6], mais j'comprends pas ta boucle dans verifLetter, le but du pendu c'est pas de demander au joueur de choisir une nouvelle lettre à chaque tour ?

Sous forums
  • Religion
La vidéo du moment