%号运算总结
一、取模运算符
示例:5%2 = 2…1
算法:5 % 2 = 1 (5 - 2*2 = 1)
另: -5%2 = 1
二、取余区别
第一步:求整数商c:
①进行求模运算时:c = [a/b] = -7 / 4 = -2(向负无穷方向舍入),
②进行求余运算时:c = [a/b] = -7 / 4 = -1(向0方向舍入);
第二步:计算模和余数的公式相同,但因c的值不同,
①求模时:r = a - c*b =-7 - (-2)4 = 1,
②求余时:r = a - cb = -7 - (-1)*4 =-3。
注意:向负无穷方向取整
3/5=0.6,向负无穷取整,得到0
“余数”=3-(0*5)=3
-3/5=-0.6 负无穷取整,得到-1
“余数”=-3-(-1*5)=-3+5=2
总结
另,%表示字符串格式化操作,常用的操作有%s %d %r等
特别注意:各个环境下%运算符的含义不同,比如c/c++,java 为取余,而python则为取模。
参考:https://yanyx.blog.csdn.net/article/details/118573110?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-118573110-blog-120312458.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-118573110-blog-120312458.pc_relevant_default&utm_relevant_index=1