C/C++模运算(正负整数)
模运算
模运算:又称为取余运算
正整数的模运算
对于正整数a,b
如果\(a=q\times b+r\)其中\(0\le r < b\)
则有\(a \bmod b=r\)即 \(a\%b=r\)
负整数的模运算
不同的语言的负数取模运算不一样,
这一个涉及到取整函数tranc和floor
tranc函数:向0取整
例如C/C++,java中采用的是tranc
\(
r=a-b\times tranc(\cfrac{a}{b})
\)
floor函数:向负无穷取整
\(r=a-b\times \lfloor \cfrac{a}{b} \rfloor\)
取整函数不大理解的可以见四种取整函数