Récupérer les 3 plus grandes valeurs

Jatar Taak
Invité n'ayant pas de compte PHPfrance

26 nov. 2009, 21:58

Bonjour,

j'ai essayé de trouver tout seul mais ca ressemble énormément à une machine à gaz.

j'ai tirer (aléatoirement) 4 dés à six faces et j'aimerai récupérer les trois plus grandes valeurs.

par exemple :

j'obtiens avec mt_rand les valeurs : 1 - 3 - 4 - 6 et j'aimerai avoir les 3 plus grandes valeurs soit : 3 - 4 - 6 !!!

peut importe l'ordre.

pouvez vous m'aider ?

merci

ViPHP
ViPHP | 1136 Messages

26 nov. 2009, 22:09

Slt , tu tu met tes valeurs récupérées , tu peux simplement trier ce tableau par valeur , puis prendre les 3 derniers resultats ( donc les plus grands )

doc :

Pour le trie : http://fr2.php.net/manual/fr/function.sort.php

Pour sortir 3 valeurs : http://fr2.php.net/manual/fr/function.array-slice.php

Ch.

Mammouth du PHP | 985 Messages

26 nov. 2009, 22:35

Exemple:
// les résultats des 4 dés dans un tableau
$array = array(4, 2, 3, 1);

// tri en ordre croissant
asort($array);

// on garde que les 3 premières valeurs
$array  = array_slice($array, 0, 3);

// affichage du résultat
print_r($array );
Résultat:

Code : Tout sélectionner

Array ( [0] => 1 [1] => 2 [2] => 3 )
Il faudra juste que tu tris en ordre décroissant :wink:
Face à la roche, le ruisseau l'emporte toujours, non pas par la force mais par la persévérance.

Jatar Taak
Invité n'ayant pas de compte PHPfrance

27 nov. 2009, 00:35

Merci beaucoup