Я новичок в C и понял, что я не совсем понял разницу между /
и %
. Было бы очень полезно, если бы вы могли объяснить это мне. Благодаря!В чем разница между% и/в C?
ответ
a/b
- частное лицо.
a % b
- это остаток, то есть мода b.
/
является подразделением, %
является модулем, целочисленным остатком подразделения.
«/» используется для разделения и «%» используется для вычисления остатка
например
int a = 10;
int b = 3;
int divisionResult = a/b; //it's 3
int reminderResult = a % b; // it's 1 (which is the remainder of the division)
'%' - это остаток, а не по модулю. Например. '-5% 3' производит остаток от деления, -2, но математики часто предпочитают, чтобы результат« modulo »был равен 1. –
@EricPostpischil Спасибо за ваш комментарий - я обновил свой ответ. Однако я думал, что отличие от операторов modulo и reminder было только в знаке: с остаточным оператором знак результата совпадает с знаком дивиденда, а с модульным оператором знак результата такой же, как дивизор. Почему «по модулю» -5% 3 будет 1? – tanzolone
Расстояние между 1 и -5 равно 6, кратному 3. Для математиков по модулю сравнения сопоставляются целые числа в подмножества, основанные на кратных модулю. Для 3 подмножества являются {..., -6, -3, 0, +3, + 6, ...}, {..., -5, -2, 1, 4, 7, ...} и {... -4, -1, 2, 5, 8, ...}. Фактической «вещью», которая является «x modulo 3» для математика, является само подмножество, а не какой-либо конкретный его член. Однако мы можем использовать любой член для представления подмножества. Часто бывает полезно выбрать элемент, который находится между 0 и модулем (включая 0, не включая модуль), только потому, что он упрощает некоторые вещи. –
зависит, где они используются, они означают разные вещи в разных контекстах
, если вы делаете арифметику, тогда/означает деление, а% - мода.
/деление как нормальное деление работает
% даст вам остаток от деления, например, 5% 2 = 1, потому что 2 входит в 5 дважды с остатком 1.
также это довольно универсальный для всех языков (возможно, за некоторыми исключениями, о которых я не знаю)
'%' это просто остаток, а не мода. Например.'-5% 3' производит остаток от деления, -2, но математики часто предпочли бы, чтобы результат« по модулю »равнялся 1. –
/используется для деления и% используется для модуля.
Пример:
5/2 = 2
5 % 2 = 1
- 1. В чем разница между (++ c) & (C++)?
- 2. В чем разница между:
- 3. В чем разница между ....?
- 4. В чем разница между GLSL и c?
- 5. В чем разница между C# и .NET?
- 6. В чем разница между b и c?
- 7. В чем разница между «VC++» и «C++»?
- 8. В чем разница между следующими конструкторами C++?
- 9. В чем разница между следующими свойствами C#
- 10. В чем разница между кодом
- 11. В чем разница между дополнениями?
- 12. В чем разница между && и &?
- 13. В чем разница между «./» и «../»?
- 14. В чем разница между ними?
- 15. В чем разница между следующим .... Разница одинакова для c & java?
- 16. чем разница между следующими двумя кодами C
- 17. В чем разница между C++, объектно-c и объектно-C++?
- 18. чем разница между C++ и MFC
- 19. В чем разница между% .c и * .c в GNU Make
- 20. В чем разница между статической переменной в C++ и C#?
- 21. В чем разница между VARNAME_T и VARNAME_P в c/C++
- 22. В чем разница между основными в C & C++
- 23. В чем разница между% c и% s в C
- 24. В чем разница C#
- 25. В чем разница между «и»?
- 26. В чем разница между `{}` и `[]`?
- 27. В чем разница между == и ===?
- 28. В чем разница между решениями
- 29. В чем разница между «+» и «\ +»?
- 30. В чем разница между следующим?
Это вопрос С, это не Objective-C специфичны. –
Wikipedia имеет хорошее объяснение о '%': http://en.wikipedia.org/wiki/Modulo_Operation –
Пройдите через книгу или какой-либо другой учебный материал. SO не является местом для запроса такого вопроса – DhruvJoshi