Вот мой пример кода на C:
int x, y;
x = 7 % 10;
y = 10 % 7;
printf("%d, %d", x, y);
Он печатает: 7, 3
Я понимаю 10 % 7 = 3
.
Я не понимаю 7 % 10 = 7
.
Я пробовал тот же код, используя переменную типа float, и получил тот же ответ. Как работает мод, когда делитель больше дивиденда? Очень хотелось бы принципиально понять, как пользоваться этим оператором.
7 / 10
- это0
. Остаток -7
. Итак,7 % 10
это7
. - person Tom Karzes   schedule 04.11.2017a
иb
(a + b) % b
совпадает сa % b
. Другими словами, вы можете продолжать вычитатьb
, пока результат не станет меньшеb
, и это остаток. - person Tom Karzes   schedule 04.11.2017