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 :

Entiers dans un tableau


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 102
    Par défaut Entiers dans un tableau
    Bonjour,

    Je voudrais stocker un certain nombre d'entier dans un tableau, mais ceux-ci doivent être générés automatiquement par l'ordinateur, donc je ne peux pas les déclarer dans le programme. J'aimerais qu'une fois qu'elles seront générées, les stocker dans un tableau.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        private static void genererLettres()
        {
            aleatoire = generateur.nextInt(8);
            System.out.println(lettresAleatoires[aleatoire]);
        }
    Merci d'avance

  2. #2
    Membre Expert Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Par défaut
    Je ne comprend pas le problème.
    Tu crée un tableau et tu stocke ton nombre dedans. Ou bloques tu?

  3. #3
    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
    Salut,


    Le problème n'est pas clair !
    Si tu veux générer des entiers aléatoires dans l'intervalle [0,N], tu dois utiliser la classe Random du package java.util :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     private static void genererLettres()
         {
           java.util.Random aleatoire = new java.util.Random();
           System.out.println( aleatoire.nextInt(N+1));
          }

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 102
    Par défaut
    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
    78
    79
    80
    81
    82
    83
    84
     
    public class Main
    {
     
        final static String[] lettresAleatoires =
        {
            "R", "B", "O", "V", "J", "F", "I", "N"
        };
        static String oui = "oui";
        static String lettresAuHasard = "";
        static String jouerPartie = "";
        static String CombinaisonEntree = "";
        static String chaine = "";
        static int[] tableau = new int [4];
        static int[] tableau2 = new int [4];
        static int aleatoire;
        static int sortie;
        static BufferedReader r = new BufferedReader(new InputStreamReader(System.in));
        static Random generateur = new Random();
        static String chaineEntree;
        char tableauChaine;
        static char[] k = new char [4];
        static char[] l = new char [4];
        static int essai = 1;
     
        public static void main(String[] args) throws IOException
        {
            afficherRegles();
            demanderSiExecutionDuJeu();
     
            for (int i = 0; i < 3; i++)
            {
                genererLettres();
            }
            demanderCombinaison();
            determinerSiExact();
        }
     
        private static void afficherRegles()
        {
            System.out.println("Le programme génère automatiquement une suite de\n"
                    + "caractères de quatre lettres que l'utilisateur\ntentra de "
                    + "deviner en un maximum de dix essais.\nS'il n'a pas réussi lors"
                    + " des essais alloués ou\ns'il quitte le jeu, la partie est "
                    + "perdue.\nBonne chance! ");
            System.out.println("-------------------------------------------------");
        }
     
        private static void demanderSiExecutionDuJeu() throws IOException
        {
            System.out.println("Voulez-vous jouer une partie? (répondre oui)");
            jouerPartie = r.readLine();
     
            if (jouerPartie.equalsIgnoreCase(oui))
            {
                genererLettres();
            }
            else
            {
                System.exit(sortie);
            }
        }
     
        private static void genererLettres()
        {
            aleatoire = generateur.nextInt(8);
            chaine = "" + lettresAleatoires[aleatoire];
            k = chaine.toCharArray();
            System.out.println(k);
        }
     
        private static void demanderCombinaison() throws IOException
        {
            System.out.println("Entrez votre combinaison pour l'essai" + essai +
                    " <enter> pour arrêter");
            CombinaisonEntree = r.readLine();
            l = CombinaisonEntree.toCharArray();
        }
     
        private static void determinerSiExact()
        {
     
        }
    }
    Je dois mettre les caractères générés par l'ordinateur et les comparer aux lettres que l'utilisateur a entrées c'est là que je ploque je ne sais pas quoi mettre dans private static void determinerSiExact()
    j'ai essayé toute sorte de choses (c'est pour ça qu'il y a peut-être des variables qui ne servent à rien) mais je n'ai pas réussi à le faire fonctionner

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    Tout d'abord, il y a un gros risque sur la saisie du code par l'utilisateur. S'il saisit plus de 4 caractères, ça va planter.

    Mais pour répondre à la question:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        private static void determinerSiExact()
        {
           for(int i=0; i<4; i++) {
             if( k[i] != l[i] ) {
               System.out.println("Perdu");
               return;
             }
           }
           System.out.println("Gagné");
        }

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 102
    Par défaut
    Merci je vais arranger ça

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 102
    Par défaut
    Autre problème:

    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
                        for (int i = 0; i <= 4; i++)
            {
                if (k[i] != l[i])
                {
                    {
                        System.out.println("Le caractère " + k[i] + " est"
                                + " mal placé");
                    }
                }
                else
                {
                    System.out.println("Le caractère " + k[i] + " est"
                            + " bien placé");
                }
            }
    }
    quand j'entre ovii et que la suite générée par l'ordi est ovoo, il me dit seulement " Le caractère O est mal placé ". Je veux avoir un message de ce type pour chaque caractère que j'aurai entré.

    merci encore

Discussions similaires

  1. [Turbo Pascal] Insertion d'un nombre entier dans un tableau trié
    Par FASTWERO dans le forum Turbo Pascal
    Réponses: 2
    Dernier message: 05/05/2014, 20h40
  2. Liste de n entiers dans un tableau
    Par mokochan dans le forum C#
    Réponses: 2
    Dernier message: 28/07/2011, 18h55
  3. Entier dans un tableau de char.
    Par fred61 dans le forum Débuter
    Réponses: 2
    Dernier message: 19/05/2011, 11h33
  4. Réponses: 3
    Dernier message: 13/04/2008, 02h03
  5. [TP] La position des entiers dans un tableau
    Par argon dans le forum Turbo Pascal
    Réponses: 22
    Dernier message: 21/12/2006, 11h42

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