标签:舍入 取模 floor fix 编程 中取 符号 取余
描述:
取余和取模极其相似,常常会让人以为两者是同一样性质,其实不然。在符号相同时,两者不会冲突,符号不同时就会有以下区别:
- 取余:向0舍入。
- 取模:向负无穷舍入。
符号相同:
比如:9 / 5 = 1.8会有两个商1和2。
9 = 5 * 1 + 4或9 = 5 * 2 + (-1),因为是向0舍入,取前者计算结果,9 余 5 = 4,9 模 5 = 4。
符号不同:
比如:9 / (-5) = -1.8会有两个商-1和-2。
9 = (-5) * (-1) + 4或9 = (-5) * (-2) + (-1),9 余 -5 = 4,9 模 -5 = -1。
原则定义:
- 取余:rem(x, y) = x - y * fix(x / y)。
- 取模:mod(x, y) = x - y * floor(x / y)。
fix()向0取整,floor()向负无穷取整。
以x = 9,y = -5为例:
-
fix(9, -5) = -1, floor(9, -5) = -2。
-
rem(9, -5) = 4,mod(9, -5) = -1。
标签:舍入,取模,floor,fix,编程,中取,符号,取余 来源: https://www.cnblogs.com/cnwanj/p/14859333.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。