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 :

Doublons tableau à 3 dimensions


Sujet :

Collection et Stream Java

  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 1
    Par défaut Doublons tableau à 3 dimensions
    Bonjour,

    Voici mon code :
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
     
    import java.util.Random;
    import java.util.Scanner;
     
     
    public class Petanque {
     
    	protected int nbJoueurs;
    	protected int nbParties;
    	protected boolean [][][]parties;
    	protected boolean []choisis;
     
    	public Petanque(int nbJ, int nbP){
    		this.nbJoueurs=nbJ;
    		this.nbParties=nbP;
    		this.parties=new boolean[nbP][nbJ][nbJ];
    		this.choisis=new boolean[nbJ];
    	}
     
    	public void creationParties(){
     
    		Random r = new Random();
    		boolean ok=false;
     
    		for(int i=0; i<nbParties; i++){
    			System.out.println();
    			System.out.println("Partie numéro " + (i+1));
    			//La boucle continue tant que tout les numéro ne sont pas tirés
    			while(tousChoisis()==false){
    				int joueur1 = r.nextInt(nbJoueurs);
    				int joueur2 = r.nextInt(nbJoueurs);
    				//System.out.println(joueur1 + " !!! " + joueur2);
     
    				for(int k=0;k<=i;k++){
    					if(!parties[k][joueur1][joueur2] && !parties[k][joueur2][joueur1] && joueur1 != joueur2 && !choisis[joueur1] && !choisis[joueur2]){
    						ok=true;}
    					else
    						ok=false;
    				}if(ok==true){
    					//System.out.println(parties[k][joueur1][joueur2] +  " !!! " + parties[k][joueur2][joueur1]);
    					parties[i][joueur1][joueur2]=true;
    					parties[i][joueur2][joueur1]=true;
    					choisis[joueur1]=true;
    					choisis[joueur2]=true;
    					System.out.println((joueur1 +1)+" contre "+ (joueur2+1));
    				}
    			}
    			// A la fin du tirage on réinitialise
    			reinitialiserChoisis();
    		}
    	}
     
    	// retourne faux si l'une des cases est vide
    	public boolean tousChoisis(){
    		for(int i=0;i<choisis.length;i++){
    			if(choisis[i]==false)return false;
    		}
    		return true;
    	}
     
     
    	public void reinitialiserChoisis(){
    		for(int i=0;i<choisis.length;i++)choisis[i]=false;
    	}
     
    	public static void main(String[] args) {
    		System.out.println("Entrez le nombre de joueurs : ");
    		Scanner src = new Scanner(System.in);
    		int nbJoueurs = src.nextInt();
     
    		System.out.println("Entrez le nombre de parties : ");
    		int nbParties= src.nextInt();
     
    		Petanque p = new Petanque(nbJoueurs, nbParties);
    		p.creationParties();
    	}
    }
    Le problème c'est que je ne devrai pas avoir de doublons du genre si 7-2 est déjà sorti je ne devrai plus avoir 7-2 ni 2-7.

    Merci pour votre aide.

  2. #2
    Membre Expert
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Par défaut
    Salut,

    A premiere vue, je dirais que le probleme est que tu fais J'aurais plutot vu un while, pour s'arreter si on trouve un doublon...

  3. #3
    Membre actif
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Novembre 2011
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2011
    Messages : 50
    Par défaut
    Je n'ai pas réussi à le faire fonctionner.

    Pourquoi s'ennuyer avec des tableaux en procédural.

    Essayer avec les classes : Partie, Equipe, Joueur
    HashMap<Partie,Equipe<Joueur1,Joueur2>>, ou d'autre organisations

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

Discussions similaires

  1. Doublons tableau multi-dimension
    Par stomerfull dans le forum Langage
    Réponses: 2
    Dernier message: 22/09/2011, 10h06
  2. Réponses: 2
    Dernier message: 16/06/2009, 10h44
  3. Réponses: 7
    Dernier message: 09/02/2009, 14h28
  4. Supprimer les doublons dans un tableau à deux dimensions
    Par ouskel'n'or dans le forum Contribuez
    Réponses: 0
    Dernier message: 30/07/2008, 09h47
  5. Supprimer les doublons dans un tableau à deux dimensions
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 30/07/2008, 09h33

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