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

avec Java Discussion :

Algorithme : Nombre aleatoire selon des pourcentages


Sujet :

avec Java

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 4
    Points : 7
    Points
    7
    Par défaut Algorithme : Nombre aleatoire selon des pourcentages
    Bonjour à tous,
    Pour l'un de mes projets j'ai besoin de tirer un nombre aléatoire, selon des pourcentages prédéfinis.
    Exemple :

    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
    final Integer POURCENT_BLEU = 20;
    final Integer POURCENT_ROUGE = 50;
    final Integer POURCENT_JAUNE = 30;
     
    /*
    * Maintenant je dois tirer un nombre aleatoire
    * en prenant en compte ces pourcentages
    */
     
    int numeroBleu = 1;
    int numeroRouge = 2;
    int numeroJaune = 3;
     
    // et là je ne vois pas trop quoi mettre...
    Integer couleur = Math.random() 
     
    /*
    * Et donc en sortie j'aimerais qu'il y ai 20% de chance d'avoir 1,
    * 50% de chance d'avoir 2 et 30% de chance d'avoir Jaune...
    */
    Donc voilà, je ne pense pas que cela soit trop difficile à réaliser, mais je m'y prend peut-être mal, merci pour vos idées !

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 182
    Points : 268
    Points
    268
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int couleur = (int)(Math.random() * (10-1)) + 1;
    tu pige un nombre de 1-10 puisque tout facon tes pourcentage peuvent etre reduit en fraction sur 10

    ensuite j'imagine que tu comprend comment faire la suite avec if elseif

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 4
    Points : 7
    Points
    7
    Par défaut
    Salut,
    Prenons ton exemple, admettons :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    final Integer POURCENT_BLEU = 20;
    final Integer POURCENT_ROUGE = 50;
    final Integer POURCENT_JAUNE = 30;
     
    /*
    * Maintenant je dois tirer un nombre aleatoire
    * en prenant en compte ces pourcentages
    */
     
    int numeroBleu = 1;
    int numeroRouge = 2;
    int numeroJaune = 3;
     
    Integer couleur = (int)(Math.random() * (100-1)) + 1;
    Admettons que maintenant couleur = 26. Je fais quoi de ce 26 ? Je ne peux pas le comparer à mes pourcentages, ou alors je ne vois vraiment pas comment.
    C'est le traitement de ce chiffre que je ne comprends pas, comment lui faire prendre en compte les pourcentages.

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 182
    Points : 268
    Points
    268
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    int couleur = (int)(Math.random() * (10-1)) + 1;
     
            if(couleur < 3)
                System.out.println("Bleu"); //pige de 1-2 (20%)
            else if(couleur < 8)
                System.out.println("Rouge");  //pige de 3,4,5,6,7 (50%)
            else if(couleur < 11)
                System.out.println("Jaune"); //pige de 8,9,10 (30%)

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 4
    Points : 7
    Points
    7
    Par défaut
    Ok, je te remercie, effectivement ça marche impec
    Je clos le sujet, encore merci !

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

Discussions similaires

  1. génération des nombres aleatores selon loi normal
    Par raja_louhichi dans le forum MATLAB
    Réponses: 1
    Dernier message: 24/04/2014, 13h27
  2. Remplir une table selon des pourcentages
    Par wassim_boy dans le forum Débuter
    Réponses: 15
    Dernier message: 05/01/2012, 15h46
  3. Algorithme de validation messages selon des grammaires
    Par alatox dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 29/05/2010, 00h57
  4. [MySQL] choix des 5 nombres aleatoires distincts
    Par sebnutt dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 14/11/2006, 13h29
  5. Réponses: 2
    Dernier message: 16/05/2006, 17h02

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