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

Algorithmes et structures de données Discussion :

Hasard réparti... [FAQ]


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné Avatar de johweb
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2003
    Messages
    342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2003
    Messages : 342
    Par défaut Hasard réparti...
    Salut à tous,

    Je dois répartir un nombre entre 4 variables. Pour cela, j'utilise le bout de code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            $m1=rand(0, $monnombre);
            $m2=rand(0, ($monnombre-$m1));
            $m3=rand(0, ($monnombre-$m1-$m2));
            $m4=rand(0, ($monnombre-$m1-$m2-$m3));
    Malheureusement, avec ce code, on obtient toujours $m1>$m2>$m3>$m4. Or j'aimerai que cette répartition soit totalement aléatoire. Comment faire ?

  2. #2
    Membre éclairé
    Homme Profil pro
    Designer API
    Inscrit en
    Octobre 2003
    Messages
    280
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Designer API

    Informations forums :
    Inscription : Octobre 2003
    Messages : 280
    Par défaut
    bonjour,


    ca pourrai t'aider ca ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function hasard() {
     $tab = "0123456789";
     $alea = "";
     for ($i=0;$i<10;$i++)
     	$alea .= substr($tab,rand(0,9),1);
     return $alea;
    }

  3. #3
    Membre chevronné Avatar de johweb
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2003
    Messages
    342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2003
    Messages : 342
    Par défaut
    Non, c'est pas exactement ça. En fait, en me relisant, je vois que j'ai pas été très clair.
    Mais je viens de résoudre mon problème avec ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            $m1=rand(0, $row[nb_merc]);
            $m2=rand(0, ($row[nb_merc]-$m1));
            $m3=rand(0, ($row[nb_merc]-$m1-$m2));
            $m4=$row[nb_merc]-$m1-$m2-$m3;
    Là, j'obtiens ma bonne répartition aléatoire.

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

Discussions similaires

  1. [Débutant][Application répartie] Technologie et architecture
    Par soulhouf dans le forum Plateformes (Java EE, Jakarta EE, Spring) et Serveurs
    Réponses: 7
    Dernier message: 28/09/2005, 18h12
  2. selectionner une ligne au hasard dans une table
    Par dark_vidor dans le forum Requêtes
    Réponses: 2
    Dernier message: 27/06/2005, 12h01
  3. message au hasard
    Par Pierrick584 dans le forum C++
    Réponses: 5
    Dernier message: 15/05/2005, 16h37
  4. Choisir un fichier au hasard dans un répertoire
    Par M.Dlb dans le forum Linux
    Réponses: 2
    Dernier message: 09/12/2004, 22h41
  5. Algorithme de randomisation ... ( Hasard ...? )
    Par Anonymous dans le forum Assembleur
    Réponses: 8
    Dernier message: 06/09/2002, 14h25

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