Je peux écrire le programme
int a = 3;
int b = 4;
Console.WriteLine(a % b);
La réponse que je reçois est 3. Comment 3 mod 4 = 3 ???
Je ne peux pas comprendre comment cela est calculé de cette façon.
Parce que le reste de 3/4 = 3.
http://en.wikipedia.org/wiki/Modulo_operator
Si vous ne pouvez pas comprendre pourquoi le reste est 3, nous avons quelques problèmes plus graves ici.
Je ne savais pas trop à quoi m'attendre, mais je ne pouvais pas comprendre comment le reste était 3.
Donc vous avez 3 cookies et vous voulez les diviser équitablement entre 4 personnes.
Parce qu'il y a plus de personnes que de cookies, personne ne reçoit un cookie ( quotient = 0) et vous avez un reste de 3 cookies pour vous-même. :)
3 mod 4 est le reste quand 3 est divisé par 4.
Dans ce cas, 4 passe dans 3 fois zéro avec un reste de 3.
Comme expliqué par d'autres, mais si vous ne voulez pas utiliser l'opérateur "mod". Voici l'équation pour comprendre le reste de "a" divisé par "n"
a-(n* int(a/n))
je pense déjà que l'utilisateur a peut-être compris les réponses .. car il y a tant de bons programmeurs .. en termes simples, %
vous indique le rappel après la division avec votre propre entier.
par exemple.
int a = int.parse(console.readline());
int b = a % 2;
maintenant vous entrez 13, cela donnera 1, car après la plongée 13 par 2, le reste est 1 en mathématiques simples. J'espère que vous avez ça.
J'ai trouvé la réponse confuse et trompeuse .....
Le module est ce qui reste DANS LE PREMIER NOMBRE après avoir divisé la seconde en autant de fois que possible.
1 % 1 = 0 because after dividing 1 into 1, one time, there's nothing left
2 % 1 = 0 because after dividing 1 into 2, two times, there's nothing left
1 % 2 = 1 because 2 won't go into 1, so 1 is left
Un autre "comme expliqué par d'autres", mais si vous êtes curieux de connaître plusieurs autres façons de moduler (ou d'utiliser une méthode alternative), vous pouvez lire cet article qui compare différentes méthodes .
Fondamentalement, le moyen le plus rapide est le bon et vieux opérateur de module, similaire à:
if (x % threshold == some_value)
{
//do whatever you need to
}