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

Langage PHP Discussion :

Réellement mélanger un array (shuffle laisse des éléments à leur place !)


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 72
    Points : 37
    Points
    37
    Par défaut Réellement mélanger un array (shuffle laisse des éléments à leur place !)
    Bonsoir à tous,

    J'ai 2 array, qui font la même longueur, numérotés de 1 à 10 (pour l'exemple).

    J'aimerais que le 2eme tableau soit mélangé, de telle manière qu'<gras>aucune</gras> valeur ne reste à sa place.

    Or quand je fais shuffle, des fois, une valeur ne va pas bouger.

    Par exemple, $array1[5] (qui est ordonné!) va donner la valeur 6, et $array2[5] (qui est censé ne PAS etre ordonné) va également sortir la position 6.
    Je veux que chaque élément de array2 soit différent de son accolyte en array1.
    Pouvez-vous m'aider SVP ? :-)
    Pour la Terre et vos économies, pensez à une maison passive et à la renovation.

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Bonjour

    Tout l'intérêt d'un mélange aléatoire, c'est que tu ne sais pas ce qui va se passer. Donc il est possible que certaines valeurs restent à leur place...
    A partir du moment où les autres valeurs ont bougé, ton tableau n'est plus ordonné, donc je ne vous pas réellement le problème.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2008
    Messages : 24
    Points : 17
    Points
    17
    Par défaut
    tu re-shuffle le tableau désordonné. Moins de risque que la même valeur soit identique mais le cas peut arrivé.

  4. #4
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Citation Envoyé par abeh25 Voir le message
    tu re-shuffle le tableau désordonné. Moins de risque que la même valeur soit identique mais le cas peut arrivé.
    Ben nan...
    Statistiquement autant de chances, même au bout de la millième fois.
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 72
    Points : 37
    Points
    37
    Par défaut Mon problème est résolu
    Voilà ce que j'ai fait :

    J'ai incrémenté chaque valeur de array2, et pour la dernière, j'ai pris la première valeur de array1 :

    1 | 2
    2 | 3
    3 | 4
    4 | 5
    5 | 6
    6 | 1

    Comme ça je suis sûr qu'aucune valeur n'est identique.

    Et vu que ces tableaux étaient eux-mêmes "liés" à un autre array trié de manière alphabétique, j'ai fait un shuffle sur ce dernier array.

    Mc Gyver style

    Edit : pas vraiment liés... Bref, j'ai mes expressions alphabétiques en désordre, leur id dans l'ordre et le lien différent à chaque fois
    Pour la Terre et vos économies, pensez à une maison passive et à la renovation.

  6. #6
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Citation Envoyé par 512banque Voir le message
    J'ai incrémenté chaque valeur de array2, et pour la dernière, j'ai pris la première valeur de array1
    aka "permutation circulaire"
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

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

Discussions similaires

  1. Filtre des éléments d'un array
    Par 6ril23 dans le forum Langage
    Réponses: 11
    Dernier message: 21/12/2013, 17h30
  2. Somme des éléments de mon array
    Par aitiahcene dans le forum Langage
    Réponses: 11
    Dernier message: 30/04/2013, 15h42
  3. Jsdoc, type des éléments d'un Array
    Par dukej dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 28/01/2011, 00h05
  4. Affichage des éléments d'un array
    Par L'aigle de Carthage dans le forum Langage
    Réponses: 5
    Dernier message: 06/05/2008, 10h35
  5. [DOM] Placer des éléments du DOM dans un array()
    Par strat0 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 03/08/2007, 15h06

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