Оператор модуля Java

#java #modulus

#Ява #модуль

Вопрос:

Использование оператора модуля-это то, что должны знать все программисты. Я это знаю =).

На яве у нас есть :

 int a = 100 , b = 50, c;  

Если мы это сделаем :

 c = a % b; // c = 0 because : 100 = 50*2   0 | D = d*q   r using simple maths  

Однако я чувствовал себя немного разочарованным из-за того, что не нашел Причины этой операции :

 c = b % a; // c = 50 ???? It seems not to have logic when a use D = d*q   r  

Может ли кто-нибудь объяснить мне, почему 50 % 100-это 50 ??? Я не очень хорошо понимаю.

Спасибо

Ответ №1:

Потому что вы можете умножить на 0:

 c = 100*0   50;  

Это то 50 , что возвращается по модулю.

Ответ №2:

Подумайте об этом так:

100 goes into 50 how many times?

Ноль раз. Так что, должно быть 50 , что-то осталось. Поэтому ответ таков 50 .