Вопрос:
Я никогда не сталкивался с тем, что требовало от меня использовать его, и когда я говорю, что он ничего не делает.
Итак, может кто-то объяснить подробно, что он делает?
Лучший ответ:
Его оператор модуля.
См. ссылку MSDN, хотя у нее нет отличного примера.
В основном он получает остаток, когда первое число делится на второе.
Как 7 % 3 = 1. Вы можете играть с этим в google.
Как Пример MSDN говорит, что modding разных типов (удваивает, десятичный знак) приводит к этим типам.
Наиболее распространенное использование в программах, требующих проверки четного числа:
n % 2 == 0;// if the mod of n by 2 (remainder) is zero then n is even
В частности, как @BenVoigt говорит, что modulus фактически принимает знак дивиденда. (в отличие от остатка, который принимает знак дивизора) Кажется, что некоторые языки реализуем, таким образом, есть здесь, в wikipedia. Таким образом, С# принимает знак дивиденда.
-7 % 3 = -1//in C# -6 % 2 = 0// so even checks work ok with negative numbers in C#
Ответ №1
Это Modulo Operation. Возвращает остаток, когда одно целое делится на другое.
Ответ №2
Это modulus оператор
http://msdn.microsoft.com/en-us/library/0w4e0fzs.aspx
Ответ №3
Он позволяет вам знать, что осталось, как только первое число было разделено на второе столько раз, сколько может. Например:
-
5% 2 = 1
- Потому что 2 может переходить только в 5, 2 раза (4), тогда все, что у вас есть, осталось 1.
-
5% 2,2 = 0,6
- Поскольку 2,2 * 2 составляет 4,4 и 5-4,4 составляет 0,6.