ASP的Fix、Int、Round、CInt函数用法


ASP #fix #int #round #cint #函数2012-05-11 13:12
Fix(number) 和 Int(number) 都是返回数字的整数部分。 


number 为正数时,二者返回值一样。比如:Fix(3.6)=3,Int(3.6)=3。 
number 为负数时,Fix 直接去除小数部分,Int 返回小于或等于 number 的第一个负整数。比如:Fix(-3.6)=-3,Int(-3.6)=-4。 
Round(number, numdecimalplaces),第二个参数表示从小数点右边第几位开始实行四舍五入,可以省略,默认是0,即四舍五入返回整数。CInt(number) 利用四舍五入的方式删除小数部分。 


如果 Round 的第二个参数省略,那么 Round 和 CInt 功能是一样的。 


number 为正数时,Round(3.6)=4,CInt(3.6)=4。注意,当小数部分恰好是0.5时,总是将其四舍五入为最接近的偶数。比如Round(3.5)=4,Round(4.5)=4。 
number 为负数时,可以这样理解(假设 n 为正数): 
Round(-n) = -Round(n),比如:Round(-3.5) = -4。 
CInt(-n) = -CInt(n),比如:CInt(-99.8) = -100。


asp中的几个取整函数是:fix(),int(),round(); 
Int(number)、Fix(number)函数返回数字的整数部分。number 参数可以是任意有效的数值表达式。如果 number 参数包含 Null,则返回 Null。 
例: 
复制代码 代码如下:


response.write int(2.14) '2 
response.write fix(2.14) '2 
response.write int(2.54) '2 
response.write int(2.54) '2 


Int 和 Fix 函数都删除 number 参数的小数部分并返回以整数表示的结果。Int 和 Fix 函数的区别在于如果 number 参数为负数时,Int 函数返回小于或等于 number 的第一个负整数,而 Fix 函数返回大于或等于 number 参数的第一个负整数。例如,Int 将 -8.4 转换为 -9,而 Fix 函数将 -8.4 转换为 -8。 
round(Expression[, numdecimalplaces])返回按指定位数进行四舍五入的数值。Expression是必选项。数值表达式 被四舍五入。Numdecimalplaces是可选项。数字表明小数点右边有多少位进行四舍五入。如果省略,则 Round 函数返回整数。 
例: 
复制代码 代码如下:


response.write round(3.14) '3 
response.write round(3.55) '4 
response.write round(3.1415,3) ' 3.142 


ASP取整函数 


取 整 函 数 
大家都知道在BASIC语言中,系统为我们提供了许多标准函数,而“取整函数”就是其中一个非常重要的函数。 
一、 “取整函数”的格式和功能。 
1、格式:INT(X) 
2、功能:取不大于X的最大整数 
3、说明:其中INT为函数名,不允许改变,X为自变量,其形式多种多样,可以是数值常量、数值变量、数值表达式。 
例如:INT(3.1416)=3 
INT(3.8752)=3 
INT(-3.14)=-4 
INT(-3.85)=-4 
从上面的题目来看,我们可以看出,对于有小数部分的正数,INT 
取整这后把小数部分舍掉,但不进行四舍五入,对于有小数的负数来说,INT取整后并不是直接舍掉小数,而是取比其整部分小1的整数。当然了,对于真正整数来说,INT之后其值不变。 
二、“取整函数”的应用 
1、对数值进行四舍五入运算 
(1)对X值保留整数部分,小数部分四舍五入。 
表达式为:INT(X*100+0.5) 
例如: 
INT(3.1416+0.5)=INT(3.6416)=3 
INT(3.8572+0.5)=INT(4.3572)=4 
INT(-3.14+0.5)=INT(-2.64)=-3 
INT(-3.85+0.5)=INT(-3.35)=-4 
通过分析上面的例子我们可能看出,用INT取整函数达到四舍五入的功能,关键大在于这个0.5,咱们从数轴来看,对一个数加上0.5,相当于对其值向右移动0.5,根据小数点后第一位是小于5还是大于等于5,决定了此数在向右移动过程中是否经过了一个整数,因为INT函数取值为其左侧的最大整数,若经过了一个整数,则结果就为这个整数,否则就和原数直接INT取整结果相同。这样就可能达到四舍五入的目的了。 
(2)对X的值保留两位小数, 对第三位小数四舍五入 
表达式:INT(X*100+0.5)/100 
例如: 
INT(3.1416*100+0.5)/100 
=INT(314.16+0.5)/100 
=INT(314.66)/100 
=314*100 
=3.14 
INT(3.8572*100+0.5)/100 
=INT(385.72+0.5)/100 
=INT(386.22)/100 
=386/100 
=3.86 
这种四舍五入保留与上面1的保留只相差在小数点位置不同,我们只要想办法改变小数点的位置就可以了,所以我们采用的方法是先对X扩大100倍,然后再按第一种方法进行取舍小数,最后再缩小100倍,这样既可以不影响数的基本大小,又可以对其进行四舍五入。 
小结1 
对X值保留N位小数,第N+1位小数四舍五入的一般表达式为: 
INT(x*10^N+0.5)/X*10^N 
2、判数一个数M能否被数N整除 
例如:判断一个数的奇偶性,即是否能被2整除 
M=25 M=24 
M/2=12.5 M/2=12 
INT(M/2)=12 INT(M/2) 
通过上述表达式很容易得出结论:25为奇数,25/2<>INT(25/2),24为偶数,24/2=INT(24/2),INT函数可以达到舍掉小数部分的功能,对一个数M来说,只有当M能被2整除的情况下,M/2才能等于INT(M/2),所以本题表达式可以写成: 
当M/2 <>INT(M/2)时,M为奇数 
当M/2=INT(M/2)时,M为偶数 
小结2 
数M能被数N整除: M/N=INT(M/N) 
数M不能数N整除: M/N<>INT(M/N) 
三、 CINT(X)、FIX(X)的区别 
三、CINT(X)对X小数部分四舍五入,然后取整。 
FIX(X)截去小数部分取整 
下表是三个函数取值的对比: 


X INT(X) CINT(X) FIX(X) 
3.26 3 3 3 
3.76 3 4 3 
-3.26 -4 -3 -3 
-3.76 -4 -4 -3 : 
小结3 
当X>=0时,INT(X)的值与其相同, 
当X<0时INT(X)的值总小1; 
CINT(X)是对X的小数部分四舍五入取整,其功能与INT(X+0.5)相同

相关文章

粤ICP备11097351号-1