概述
在编程的学习当中,我们会经常行的使用这些操作在表达式计算,但是你在使用当中,你真的理解了吗???或者说是你完全学会使用了!!
在这篇博客当中,或许会出现错误,希望大家理解,目前还在学习当中,发现错误或不足之处请大家斧正!!
目录
一、取整
二、取余与取模
一、取整
先写一个简单的代码在引入:
C语言代码:在前面的代码中,我也解释过,为什么在定义变量中,int类型赋值浮点型不报错误,
在定义变量时,类型只是计算机用来判断内存开辟的空间大小,不会发生类型不匹配的原因,注意在取出数据的时候,如果不同类型之间的数据可能会发生数据截断,导致程序出错。
我们看出,不管是负数还是整数,它们的结果都不满足我们所认知的四舍五入,那么他的计算原理是什么??我选择的这俩组数据一负一整,我们可以发现整数在变小,负数在变大,
那么我们的结论就出现了:它们都在向0靠齐,C语言中使用的便是向0靠齐的计算原理
取整原理1:向0靠齐
取整原理2:向负无穷取整
取整原理3:向正无穷取整
取整原理4:四舍五入取整
小数位是<=4 舍去,小数位>=5加1
二、取余与取模
取模的定义:
我们先写个例子:
C语言代码:
当除数与被除数都是正数时,它们的结果一致
我们在看一下出现负数的结果:我们可以发现在不同的编程语言中,负数的取模结果是不同的
C语言代码:
python代码
它们的结果出现不一样了,我们观察取模的定义:两个唯一的整数 q 和 r,满足 a = q*d + r 且0 ≤ r < d。其中,q 被称为商,r 被称为余数。
在这里,我们就会引入一种新的概念 , 正余数 负于数
所以,-10通过加法获得 有俩中方法一种是从小于-10方向靠近,一种是从大于10的方向靠近,商一定是除数的倍数所以我们的选择有 -12 与 -9:
-10 = -12 + 2
-10 = -9 + -1
这种现象出现的原因就是:在C语言中选取的负于数,在python中用的是正余数,从小于被除数方向与大于除数方向的选择
C语言中%的本质是取余(让商向0取整)
Python的%的本质是取模(让商向负无穷取整)
所以结论就是:
1.取余vs取模: 取余尽可能让商,进行向0取整。取模尽可能让商,向负无穷方向取整
最后
以上就是无情手套为你收集整理的深度理解取整&取余&取模运算一、取整二、取余与取模的全部内容,希望文章能够帮你解决深度理解取整&取余&取模运算一、取整二、取余与取模所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复