57 votes

vérifier si un nombre est divisible par 6 PHP

Je veux vérifier si un nombre est divisible par 6 et sinon, je dois l'augmenter jusqu'à ce qu'il devienne divisible.

Comment puis je faire ça ?

Merci

134voto

ZoFreX Points 3946

Simple:

 if($number %6 != 0) {
  $number += 6 - ($number % 6);
}
 

L'opérateur de module donne le reste de la division, donc $ number% 6 est le montant restant lors de la division par 6. Cela sera plus rapide que de faire une boucle et de revérifier en permanence.

Si décroissant est acceptable, c'est encore plus rapide:

 $number -= $number % 6;
 

24voto

Bandi-T Points 1628
 if ($variable % 6 == 0) {
    echo 'This number is divisible by 6.';
}:
 

Rendre divisible par 6:

 $variable += (6 - ($variable % 6)) % 6; // faster than while for large divisors
 

6voto

Wallacoloo Points 2957
 $num += (6-$num%6)%6;
 

pas besoin d'une boucle while! Modulo (%) renvoie le reste d'une division. IE 20% 6 = 2. 6-2 = 4. 20 + 4 = 24. 24 est divisible par 6.

4voto

zneak Points 45458

Donc vous voulez le prochain multiple de 6, c'est ça?

Vous pouvez diviser votre nombre par 6, puis ceil et le multiplier à nouveau:

 $answer = ceil($foo / 6) * 6;
 

2voto

Mitch Wheat Points 169614

Utiliser l'opérateur Mod % (modulus)

 if ($x % 6 == 0) return 1;


function nearest_multiple_of_6($x) {
    if ($x % 6 == 0) return $x;    

    return (($x / 6) + 1) * 6;
}
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X