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

Collection et Stream Java Discussion :

Comparer différentes valeurs d'un tableau


Sujet :

Collection et Stream Java

  1. #1
    Membre confirmé
    Profil pro
    Collégien
    Inscrit en
    Juin 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Juin 2006
    Messages : 62
    Par défaut Comparer différentes valeurs d'un tableau
    Bonjour je travail actuellement à la réalistation d'un jeu de morpion, à la fin de chaque tour, l'ordianteur détermine par un test d'égalité de case si
    1 joueur a gagner,
    Si la partie est nulle
    Ou si la partie continue.
    Pour ce faire on verifie que chaque case n'est pas pleine et on test des égalités entre les case pour verifier si 3 valeur de case sont exacte
    J'ai créér une méthode mais ne sais pas comment la remplir
    En fait je ne sais pas comment transposer en java le test d'égalité suivant
    Si Case1 = Case2 = Case3, vainqueurExist est vraie
    Si Case 1 = Case5 = Case9 ...
    Et ainsi de suite
    Merci d'avance pour votre aide

  2. #2
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    Citation Envoyé par 'ti programmeur Voir le message
    Si Case1 = Case2 = Case3, vainqueurExist est vraie
    Si Case 1 = Case5 = Case9 ...
    quel est le type de Case? une instance de classe ou bien une variable ?

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 119
    Par défaut
    Comparer différentes valeurs d'un tableau
    Quel est le rapport en le titre du fil et ton message slim_java ?
    En clair, si tu ne nous dis pas comment tu modélises ton morpion, on ne peut pas t'aider.

  4. #4
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mexique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 328
    Par défaut
    Salut,

    Citation Envoyé par gulain Voir le message
    Quel est le rapport en le titre du fil et ton message slim_java ?
    En clair, si tu ne nous dis pas comment tu modélises ton morpion, on ne peut pas t'aider.
    Ce n'est pas slim_java qui pose la question initiale mais 'ti programmeur, et pour y répondre il faut bien qu'on sache de quel type de tableau il est question:
    boolean, int, String, ... ?

    Cordialement,

    Dan

  5. #5
    Membre averti

    Inscrit en
    Octobre 2006
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 30
    Par défaut
    Si tu as un tableau de int du type: int[][] cases = new int[3][3];

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    if(case[0,0]==case[1,0] && case[1,0]==case[2,0]) {
      return true;
    }
     
    if(case[0,1]==case[1,1] && case[1,1]==case[2,1]) {
      return true;
    }
     
     
    etc.
     
    return false;
    Ca n'est pas super élegant tu pourrais le faire en C, pourquoi ne pas faire des objets, du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    public enum Player {
      PLAYER1, PLAYER2, NONE;
    }
     
    public interface Case {
      public Player getOwner();
      public void setOwner(Player player);
    }
     
    public abstract class Morpion {
     
      protected Case[][] cases = new Case[3][3];
     
      public void init() {
       for(int i=0;i<3;i++) {
           for(int j=0;j<3;i++) {
             setPlayerAt(i,j,Player.NONE);
           }
        }
      }
     
      public Player abstract getWinner();
     
      public abstract setPlayerAt(int x, int y, Player player);
     
     
    }
    Aprés il doit y avoir un moyen de trouver la solution rapidement en liant les cases entre elles, une case auraient des cases voisines et une case pourrait avoir une méthode du genre: est ce que je forme une ligne de 3 avec mes voisines. Good luck

  6. #6
    Membre confirmé
    Profil pro
    Collégien
    Inscrit en
    Juin 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Juin 2006
    Messages : 62
    Par défaut
    Ok le type de case est string j'avais prévu de la remplir avec un "X", un "O" ou un " "
    la méthode de pip m'à l'air applicable, je vais essayer et je vous tient au courant.
    Merci pour tout

  7. #7
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    Citation Envoyé par 'ti programmeur Voir le message
    Ok le type de case est string j'avais prévu de la remplir avec un "X", un "O" ou un " "
    la méthode de pip m'à l'air applicable, je vais essayer et je vous tient au courant.
    Merci pour tout
    attention ,avec les type string ,si tu fait == sa va comparer les référence et non pas le contenu ..il vaut mieux faire chaine_1.equals(chaine_2)

Discussions similaires

  1. Comparer des valeurs dans un tableau de manière systématique
    Par kay600 dans le forum ActionScript 3
    Réponses: 3
    Dernier message: 27/06/2010, 19h34
  2. [MySQL] Comparer plusieurs valeur d'un tableau php
    Par worldhugo dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 28/04/2009, 16h26
  3. [Tableaux] Comparer des valeurs dans un tableau
    Par Dirty Harry dans le forum Langage
    Réponses: 13
    Dernier message: 03/02/2007, 00h52
  4. Réponses: 6
    Dernier message: 26/12/2006, 17h01
  5. comparer les valeurs d'un tableau
    Par nicerico dans le forum ASP
    Réponses: 4
    Dernier message: 19/08/2004, 11h20

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