209 votes

Quelle est la différence entre "mod" et "reste"?

Mon ami a dit qu'il y avait des différences entre "mod" et "reste". Si tel est le cas, quelles sont ces différences entre C et C ++? Est-ce que '%' signifie "mod" ou "rem" en C?

197voto

David Schwartz Points 70129

Il y a une différence entre le module et le reste. Par exemple:

-21 mod 4 est 3 parce que -21 + 4 x 6 est 3 .

Mais -21 divisé par 4 donne -5 avec un reste de -1 .

Pour les valeurs positives, il n'y a pas de différence.

70voto

chux Points 13185

En C, % est le reste.

Lorsque les entiers sont divisés, le résultat de l'opérateur / est algébrique quotient avec tout partie fractionnaire mis au rebut... (Ce qui est souvent appelé "la troncature vers zéro".) C11dr §6.5.4 6

Les opérandes de l' % opérateur aura de type entier. C11dr §6.5.4 2

Le résultat de l' / opérateur est le quotient de la division du premier opérande par le second; le résultat de l' % opérateur est le reste ... C11dr §6.5.4 5


C n'a pas de définir un entier module de fonction. Une telle fonction peut suivre la division Euclidienne qui diffère de C a%b fonctionnement lors de l' a est négatif.

 7 %  3 =  1  
 7 % -3 =  1  
-7 %  3 = -1  
-7 % -3 = -1   

modulo comme division Euclidienne

 7 modulo  3 =  1  
 7 modulo -3 =  1  
-7 modulo  3 =  2  
-7 modulo -3 =  2   

En C, modf() est la référence dans l'index que le module de la fonction.

Le modf fonctions saut de la valeur de l'argument intégrale et de la fraction de parties, chacune d' qui a le même type et de même signe que l'argument.

-4voto

IQwarrior Points 1

% est le reste de la valeur que vous divisez. Où / est l'opération de division similaire au calcul.

Par exemple, a / b = 10/2 = 5. Dans le cas où a% b = 10/2 = 0 car 10 est divisible par 2 et que ce n’est pas un rappel.

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