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 :

Créer un tableau avec 4 chiffres randoms


Sujet :

Collection et Stream Java

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2020
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2020
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Créer un tableau avec 4 chiffres randoms
    Bonjour !

    Alors voila je vous explique ma situation, je suis actuellement un stage dans les neurosciences et je dois, pour un projet, réaliser un petit programme dans lequel je dois générer un tableau qui contient 4 chiffres aléatoires.
    Le soucis, c'est que j'ai très peu de notions en programmation et je suis complètement bloquée. Habituellement, mon maître de stage m'aide mais il est en arrêt maladie donc c'est la cata ! J'ai fais pas mal de recherches mais par manque de notions j'ai du mal à avancer. Je vous transmets ci-joint ce que j'ai fait jusque là, et j'espère que quelqu'un pourra m'aider merci d'avance !

    Pour commencer, j'ai crée une classe Chiffre et une classe Combinaison (en plus d'autres classes dont j'ai besoin pour créer le programme entièrement), dans ma classe Chiffre, voila ce que j'ai fait :

    Nom : questionChiffre.PNG
Affichages : 982
Taille : 27,1 Ko

    Dans ma classe Combinaison, voila ce qu'il y a :

    Nom : questioncombi.PNG
Affichages : 818
Taille : 45,6 Ko

    Enfin, dans une autre classe (qui est sensée pouvoir appeler les méthodes des autres classes pour le déroulement du programme) j'ai fait ceci :

    Nom : questionjeu1.PNG
Affichages : 701
Taille : 9,9 Ko

    Et lorsque je run le programme voila ce que j'obtiens :

    Nom : question run.PNG
Affichages : 695
Taille : 1,6 Ko

    A savoir que j'ai créer 3 packages différents, 1 "controler", l'autre "ui", et le dernier "modes", je ne sais pas si ça a avoir mais dans le doute je le spécifie !

    Voila, si vous avez un peu de temps pour m'aider à y voir plus clair et comprendre pourquoi ça ne fonctionne pas je vous en serais éternellement reconnaissante ! Merci d'avance !
    Images attachées Images attachées   

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Hello,

    la prochaine fois fais un copier/coller du code, au lieu d'images qu'on ne peut pas utiliser.

    Mais bon...

    Et donc, c'est quoi qui te plaît pas là-dedans ?

    Tu dis que tu bloques, euh... Il y a quelque chose qui t'empêche d'avancer ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2020
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2020
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Salut !

    Merci pour ta réponse. Effectivement, Ca aurait été mieux avec un copier-coller, je vais le transmettre ci-joint
    En fait, je bloque car quand je run mon code ça affiche : "blahblahblah.Combinaison@7106e68e <--- Voici une combinaison aléatoire"

    - Jusqu'à ".Combinaison" je sais à quoi ça correspond, mes packages et ma classe Combinaison,
    - Mais le "@7106e68e" alors ça je ne sais pas du tout ce que c'est.
    - "<--- Voici une combinaison aléatoire" ça c'est une partie de mon code qui s'affiche correctement.

    En fait, quand je run mon code je voudrais que ça affiche une combinaison de 4 chiffres aléatoires de 0 à 9, mais je ne comprend pas où est mon erreur.

    Pour le copier-coller, le voici :

    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 class Chiffre {
     
        private int chiffre;
     
        public Chiffre() {
            Random r = new Random();
            this.chiffre = r.nextInt(10);
        }
     
            public String toString()
            {
                return Integer.toString(this.chiffre);
            }
        }
    Ma classe Combinaison :

    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
    public class Combinaison {
     
     
        private Chiffre[] tableauChiffre;
     
        public Combinaison(int tailletableauChiffre) {
            this.tableauChiffre = new Chiffre[tailletableauChiffre];
            for (int i = 0; i < this.tableauChiffre.length; i++) {
                this.tableauChiffre[i] = new Chiffre();
            }
        }
        public String combinaison(int chiffreMystere) {
     
            this.tableauChiffre = new Chiffre[chiffreMystere];
            for (int i = 0; i < tableauChiffre.length; i++) {
                tableauChiffre[i] = new Chiffre(chiffreMystere);
            }
     
                String combinaison = "";
     
                for (int i = 0; i < tableauChiffre.length; i++) {
                    combinaison = combinaison + tableauChiffre[i].toString();
                }
                return combinaison;
            }
        }
    Ma classe jeu :

    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 void start(){
            Affichage affichage = new Affichage();
            Saisie saisie = new Saisie();
            Challenger challenger = new Challenger();
            int choixJoueur = 0;
            Combinaison combi = new Combinaison(4);
     
     
     
            affichage.afficherMode();
            choixJoueur = saisie.saisieIntUtilisateur();
            affichage.modeChoisi(choixJoueur);
            System.out.print(combi);
            challenger.startchallenger();

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par Lenapaticio1 Voir le message
    - Mais le "@7106e68e" alors ça je ne sais pas du tout ce que c'est.
    C'est en gros l'identifiant unique de ton instance Combinaison en mémoire. C'est ce qui se produit quand on n'implémente pas sois même la méthode toString() dans un objet et qu'on le file à System.out.printxxx(). Tu dois le faire, comme tu a fait pour Chiffre, fournir une implémentation.

    Un exemple d'implémentation basique (en réutilisant les apis java pour pas se faire chier):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    @Override  //parce que c'est plus propre de le mettre ;)
    public String toString(){
        return "Combinaison de: "+Arrays.deepToString(this.tableauChiffre);
    }
    Citation Envoyé par Lenapaticio1 Voir le message
    En fait, quand je run mon code je voudrais que ça affiche une combinaison de 4 chiffres aléatoires de 0 à 9, mais je ne comprend pas où est mon erreur.
    Il y a l'erreur mentionnée plus haut sur le toString() manquant.
    Il y a aussi cette méthode public String combinaison(int chiffreMystere) qui n'a ni queue ni tête, le paramètre n'est pas ce qu'il dit, elle change l'état de la combinaison et te retourne un String. Je pense que tu peux la jeter elle ne fait qu'apporter à la confusion.

  5. #5
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2020
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2020
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Ah merci beaucoup pour toutes ces explications ! C'est beaucoup plus clair, merci !

Discussions similaires

  1. Créer un tableau avec Zend
    Par salmoucha dans le forum MVC
    Réponses: 12
    Dernier message: 16/12/2009, 03h51
  2. Créer un tableau avec "retrait à gauche"
    Par HomoErectus dans le forum VBA Word
    Réponses: 5
    Dernier message: 09/02/2009, 15h52
  3. Créer un tableau avec les graphes
    Par romero2008 dans le forum Pascal
    Réponses: 6
    Dernier message: 25/04/2008, 22h30
  4. Créer un tableau avec access comme sur les pages web
    Par celiaaa dans le forum VBA Access
    Réponses: 3
    Dernier message: 02/06/2007, 22h53
  5. Réponses: 2
    Dernier message: 15/12/2006, 14h22

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