重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
取整函数是指不超过实数x的最大整数称为x的整数部分,记作[x]或INT(x)。该函数被广泛应用于数论,函数绘图和计算机领域。
创新互联主营金华网站建设的网络公司,主营网站建设方案,重庆App定制开发,金华h5成都微信小程序搭建,金华网站营销推广欢迎金华等地区企业咨询
定义:
不超过实数x的最大整数称为x的整数部分,记作[x]或INT(x)。
x-[x]称为x的小数部分,记作{x}。
(需要注意的是,对于负数,[x]并非指x小数点左边的部分,{x}也并非指x小数点右边的部分,例如对于负数-3.7,[-3.7]=-4,而不是-3,此时{x}=-3.7-(-4)=0.3,而不是-0.7.)
性质
性质1 对任意x∈R,均有x-1[x]≤x[x]+1.
性质2 对任意x∈R,函数y={x}的值域为[0,1).
性质3 取整函数(高斯函数)是一个不减函数,即对任意x1,x2∈R,若x1≤x2,则[x1]≤[x2].
性质4 若n∈Z,x∈R,则有[x+n]=n+[x],{n+x}={x}.后一式子表明y={x}是一个以1为周期的函数.
性质5 若x,y∈R,则[x]+[y]≤[x+y]≤[x]+[y]+1.
性质6 若n∈N+,x∈R,则[nx]≥n[x].
性质7 若n∈N+,x∈R+,则在 区间[1,x]内,恰好有[x/n]个整数是n的倍数.
性质8 设p为 质数,n∈N+,则p在n!的 质因数 分解式中的幂次为
p(n!)=[n/p]+[n/p 2]+….
如果操作数是整数,那么就是整除,否则就是浮点除,求余的符号是%。
1、通常情况下取模运算(mod)和求余(rem)运算被混为一谈,因为在大多数的编程语言里,都用'%'符号表示取模或者求余运算。在这里要提醒大家要十分注意当前环境下'%'运算符的具体意义,因为在有负数存在的情况下,两者的结果是不一样的。
2、求模运算和求余运算在第一步不同: 取模求余运算在取c的值时,向0 方向舍入(fix()函数); 而求余取模运算在计算c的值时,向无穷小方向舍入(floor()函数)。
3、当a和b符号一致时,求模运算和求余运算所得的c的值一致,因此结果一致。但是当符号不一致的时候,结果不一样。具体来说,求模运算结果的符号和b一致,求余运算结果的符号和a一致。
4、在C语言中,%符号表示的是求余运算,在Python脚本中,%表示的是取模。
c语言取整和取余:
示例
public class Demo_1 {undefined
public static void main(String args) {undefined
Scanner sc = new Scanner(System.in)
System.out.print("请输入要判断的数字(五位数):")
int num = sc.nextInt()
sc.close()
//截取最后一位数
int a = num % 10
//截取第一位数
int b = num / 10000
//截取第四位数
int c = num % 100 / 10
//截取第二位数
int d = num / 1000 % 10
System.out.println(a + "," + b + "," + c + "," + d)
boolean b1 = (a == b)
boolean b2 = (c == d)
if(b1 b2) {undefined
System.out.println(num + "是回文数")
}else {undefined
System.out.println(num + "不是回文数")
}
}
}
1.直接赋值给整数变量
int i = 3.5;或i = (int) 3.5。
这样的方法采用的是舍去小数部分。
2、整数除法运算符‘/’取整
‘/’本身就有取整功能(int / int),可是整数除法对负数的取整结果和使用的C编译器有关。
在 C 语言中,取整的规则取决于使用的取整函数。
如果使用内置的取整函数 floor(),则取整的规则为向下取整,即取最大的整数,小于等于原数。例如:
floor(3.14) # 输出 3
floor(-3.14) # 输出 -4
如果使用内置的取整函数 ceil(),则取整的规则为向上取整,即取最小的整数,大于等于原数。例如:
ceil(3.14) # 输出 4
ceil(-3.14) # 输出 -3
如果使用内置的取整函数 round(),则取整的规则为四舍五入,即取最接近原数的整数。例如:
round(3.14) # 输出 3
round(3.5) # 输出 4
round(-3.14) # 输出 -3
round(-3.5) # 输出 -4
注意:floor() 和 ceil() 函数需要使用 math.h 头文件。
#include math.h
另外,还可以使用类型转换运算符(即 (int) 运算符)将浮点数强制转换成整型,实现取整的效果。例如:
(int)3.14 # 输出 3
(int)-3.14 # 输出 -3
但是这种方法不会准确地处理负数
(int)-3.5 # 输出 -3(不是正确的答案)
C语言的取整是指将浮点数转换为整数,即只取整数部分。
这个操作并不是通过函数实现的,而是C语言的强制类型转换。
强制浮点数转换为整数的规则为,只取浮点数的整数部分,无条件舍去小数部分。
形式为
(int)float_number
于是
(int)
1.3
的结果为1。
(int)
2.9999的结果为2。
另一种常见的取整需求为四舍五入到整数,可以通过
(int)(float_number+0.5)
的方式实现。
即
(int)(1.49+0.5)
=
(int)1.99
=
1;
(int)(2.5+0.5)=(int)(3.0)
=
3。