整数取余负数
技巧:先忽略负号,之后取余,和正常取余不同的是:被取余的数x一个数,不能比取余的数小(可以相等,这意味着任何一个整数取余-1结果都为0),之后用这个数减去取余的数,最后在得到的结果上加上负号;当被取余的负数取正后大于取余的数时,直接使用取正后的被取余的数减去取余的数,之后加上负号即为最终结果(e.g. 22取余-3,先将-3看作3,之后3x7=21,比22小,所以3x8=24,再用24-22=2,最后在得到的结果上加上负号得到最终结果为-2,即:22 % -3 = -2)
>>>print(22 % -2)
0
>>>print(22 % -3)
-2
>>>print(22 % -4)
-2
>>>print(22 % -5)
-3
>>>print(22 % -6)
-2
>>>print(22 % -10)
-8
>>>print(22 % -23)
-1
>>>print(22 % -24)
-2
>>>print(22 % -25)
-3
>>>print(22 % -26)
-4
负数取余整数
技巧:先忽略负号,之后取余,和正常取余不同的是:被取余的数x一个数,不能比取余的数小(可以相等,这意味着任何一个整数取余-1结果都为0),之后用这个数减去取余的数即为最终结果;当取余的负数取正后小于被取余的数时,直接使用被取余的数加上取余的负数,即为最终结果(e.g. -22取余3,先将-22看作22,之后3x7=21,比22小,所以3x8=24,再用24-22=2,最终结果即为2,即:-22 % 3 = 2)
>>>print(-22 % 2)
0
>>>print(-22 % 3)
2
>>>print(-22 % 4)
2
>>>print(-22 % 5)
3
>>>print(-22 % 6)
2
>>>print(-22 % 10)
8
>>>print(-22 % 23)
1
>>>print(-22 % 24)
2
>>>print(-22 % 25)
3
>>>print(-22 % 26)
4
负数取余负数
技巧:先忽略负号,之后正常取余,最后在取余结果中加上负号;当被取余的数的绝对值大于取余的数的绝对值时,结果恒为取余的数(不是它的绝对值哦!这意味着此时返回结果恒为一个负数)(e.g. -22取余-3,先将-3看作3将-22看作22,之后3x7=21,用22-21=1,最后添加负号得到-1,最终结果即为-1,即:-22 % -3 = -1)
>>>print(-22 % -2)
0
>>>print(-22 % -3)
-1
>>>print(-22 % -4)
-2
>>>print(-22 % -5)
-2
>>>print(-22 % -6)
-4
>>>print(-22 % -10)
-2
>>>print(-22 % -23)
-22
>>>print(-22 % -24)
-22
>>>print(-22 % -25)
-22
>>>print(-22 % -26)
-22
整数整除负数
技巧:先将负数看作正数,之后-(被整除的数x? >= 除数);当被整除的数的绝对值大于除数时,运算结果恒为-1(对被整除的数乘以哪个数大于等于除数 进行取负)(e.g. 25 // -4,先将-4看作4,之后4x哪个数大于25?答案是7,最后将结果取负,得到最终结果为-7,即:25 // -4 = -7)