Valeur minimale dans un tableau

Eléphant du PHP | 214 Messages

27 déc. 2010, 05:12

Bonjour,

J'ai un tableau, et je voudrais trouver la valeur minimale qui n'existe pas dedans:
$tab = array(1,2,3,6,10);

Je voudrais qu'il m'affiche la valeur minimale qui est: 4

Merci pour votre aide

ViPHP
ViPHP | 5462 Messages

27 déc. 2010, 05:35

et sur quoi tu bloques ?

Eléphant du PHP | 214 Messages

27 déc. 2010, 05:41

et sur quoi tu bloques ?
<?php
$valeurs = array(1, 2, 3, 6, 10);

// on cree un tableau
$val = array();

// on loop
for ($i=1; $i<=10; $i++)
{
// on rempli le tableau avec les valeurs
	$val = array($i);
//print_r($val);
if (!in_array ($i, $valeurs)) {

//print_r($val);
 
 echo $i.'<br>';
}
}
?>
Ils sont tous la valeurs 0, Array ( [0] => 4 )

ViPHP
ViPHP | 5462 Messages

27 déc. 2010, 05:46

c'est pas bon ca :
$val = array($i);

c'est :
$val[] = $i;


d'ailleurs ca sert a rien...

Eléphant du PHP | 214 Messages

27 déc. 2010, 05:57

c'est pas bon ca :
$val = array($i);

c'est :
$val[] = $i;


d'ailleurs ca sert a rien...
et comment faire afin de trouver les valeurs et les mettre dans un tableau

ViPHP
ViPHP | 5462 Messages

27 déc. 2010, 05:59

c'est pas bon ca :
$val = array($i);

c'est :
$val[] = $i;


d'ailleurs ca sert a rien...
et comment faire afin de trouver les valeurs et les mettre dans un tableau
pourquoi tu veux le mettre dans un tableau, sinon c'est le code que je t'ai donné pour insérer les valeurs $val[] = $i;

mais c'est quoi ton probleme a la base ? c'est pour faire quoi ?

Eléphant du PHP | 214 Messages

27 déc. 2010, 06:06

c'est pas bon ca :
$val = array($i);

c'est :
$val[] = $i;


d'ailleurs ca sert a rien...
et comment faire afin de trouver les valeurs et les mettre dans un tableau
pourquoi tu veux le mettre dans un tableau, sinon c'est le code que je t'ai donné pour insérer les valeurs $val[] = $i;

mais c'est quoi ton probleme a la base ? c'est pour faire quoi ?
C'est ce qui me retourne:

Code : Tout sélectionner

Array ( [0] => 4 ) Array Array ( [0] => 4 [1] => 5 ) Array Array ( [0] => 4 [1] => 5 [2] => 7 ) Array Array ( [0] => 4 [1] => 5 [2] => 7 [3] => 8 ) Array Array ( [0] => 4 [1] => 5 [2] => 7 [3] => 8 [4] => 9 ) Array
Ce n'est qu'une pratique, ce n'est pas important les recuprer dans un tableau, je voudrais faire, que pour les affecter dans un tableau et recuperer la valeur minimale par (min), ce n'est qu'une solution que je trouvais.

Mammouth du PHP | 1967 Messages

27 déc. 2010, 11:21

Si on se base sur le fait que tu as un tableau contenant que des entiers,

parcours les entiers de 0 jusqu'au maximum de ton tableau
utilise une variable temporaire initialisé au maximum de ton tableau + 1
test si la valeur de ta boucle est dans ton tableau
si elle y est pas, test si elle est inférieure à ta variable temporaire
à la fin de ta boucle tu aura ton minimum dans cette variable temporaire

Si ton array est toujours croissante (tu peux les classer préalablement) tu peux mettre un break lorsque ta condition est remplie

Si ton tableau contient tout les entiers de 0 à ton maximum, ton minimum sera de maximum + 1
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube