IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

jeu du pendu


Sujet :

Langage Java

  1. #1
    Expert confirmé
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Points : 4 015
    Points
    4 015
    Par défaut jeu du pendu
    bonjour tout le monde je voudrais 2 ou 3 eclairecisement sur un point en ce qui concerne l'utilisation de replace
    j'ai ecris une fonction qui retourne une chaine ou toutes les occurences concernées sont remplace dans la chaine si s'est le cas
    alors voila l'algo
    /** rend une chaîne copie de la chaine 'affichage'
    * où toutes les occurences de '?' de la chaine affichage sont remplacées par 'charPropose'
    * si 'charPropose' se trouve à la même position dans 'secret'
    * exemple : charPropose='e' secret = "implementation" affichage = "i??????nt?ti?n"
    l'affichage suivant est "i???e?ent?ti?n"
    */


    et voila mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public static String affsuiv(char c,String secr,String aff){
    //appar(,) est une fonction qui teste si le caractere appartient a la chaine		 
                       if(appar(c,secr)==true){
    			for(int i=0;i<secr.length();i++)
    				if(secr.charAt(i)==c)
    					aff=aff.replace(aff.charAt(i),c);
    		 }
    		 return aff;
    	 }

    le probleme c'est que si le caractere est dans "secr" alors la chaine retourné a toutes caracteres remplace par "c";
    merci pour les reponse
    Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! !

    Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells

  2. #2
    in
    in est déconnecté
    Membre expérimenté Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Points : 1 718
    Points
    1 718
    Par défaut
    Tu sais qu'il existe une fonction replaceAll ??

    Je vois pas trop ce que tu veux faire ... Tu peux préciser ?
    "If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"

    Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/

  3. #3
    Expert confirmé
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Points : 4 015
    Points
    4 015
    Par défaut
    je veux remplacer a une position precise un caractere donné si le caractere
    est dans le mot "secr"
    bref
    si c appartient a secr alors
    je replace dans aff les caractere concerné par c
    voila
    Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! !

    Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells

  4. #4
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Points : 5 943
    Points
    5 943
    Par défaut
    Ca ne pourra par marcher comme ça. En effet, à la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    aff = aff.replace(aff.charAt(i), c);
    aff.charAt(i) te renvoie '?' (enfin le caractère générique que tu as choisi) donc la méthode replace() va remplacer tous les '?' par le caractère donné.

    Je pense que le plus simple est de construire une nouvelle chaîne de caractères en passant par un StringBuilder
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public static String affsuiv(char c,String secr,String aff){
        StringBuilder sb = new StringBuilder();
    //appar(,) est une fonction qui teste si le caractere appartient a la chaine         
         if(appar(c,secr)==true){
             for(int i = 0; i < secr.length(); i ++) {
                if(secr.charAt(i) == c) {
                    sb.append(c);
                } else {
                    sb.append(aff.charAt(i));
                }
            }
        }
        return sb.toString();
    }
    PS : StringBuilder n'est disponible que depuis Java 1.5, si tu utilise une version antérieure, c'est StringBuffer.
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  5. #5
    Expert confirmé
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Points : 4 015
    Points
    4 015
    Par défaut
    merci je vais essayer cette methode,
    Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! !

    Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells

  6. #6
    Expert confirmé
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Points : 4 015
    Points
    4 015
    Par défaut
    merci c'est cool ça marche
    Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! !

    Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SOURCE][SDL][JEU] Le Pendu
    Par Franck.H dans le forum Contribuez
    Réponses: 6
    Dernier message: 16/04/2008, 17h49
  2. Code en bourne shell du jeu Le "PENDU"
    Par piment dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 20/07/2007, 14h17
  3. Jeu Bonhomme pendu
    Par yinyann86 dans le forum Delphi
    Réponses: 11
    Dernier message: 14/11/2006, 17h03
  4. Le jeu du pendu.
    Par giggs dans le forum C
    Réponses: 5
    Dernier message: 31/10/2006, 13h40
  5. Réponses: 4
    Dernier message: 24/03/2006, 13h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo