L lake_cx Unregistered / Unconfirmed GUEST, unregistred user! 2007-08-10 #4 var dwValue: Double; begin dwValue := 1500.1; dwValue := dwValue + 0.9; Trunc(dwValue); end;
D duxing Unregistered / Unconfirmed GUEST, unregistred user! 2007-08-10 #5 if Trunc(1500.1) < 1500.1 then Inc(Trunc(1500.1))
L lqcps Unregistered / Unconfirmed GUEST, unregistred user! 2007-08-10 #7 一点想法:数字加上0.4再四舍五入到整数位。是否想要的结果。 RoundTo(1500.1+0.4,0)
无 无柄叶 Unregistered / Unconfirmed GUEST, unregistred user! 2007-08-10 #8 Ceil() 用这个函数,只要有小数就进位,不管是 0.1 还是 0.0001 。
D dey-999 Unregistered / Unconfirmed GUEST, unregistred user! 2007-08-10 #10 “只你”同志,lqcps先生说的不是正确的吗: 一点想法:数字加上0.4再四舍五入到整数位。是否想要的结果。 RoundTo(1500.1+0.4,0)
L lake_cx Unregistered / Unconfirmed GUEST, unregistred user! 2007-08-10 #11 其实二楼就对了,只是没认真说明而已,我又解释了一遍,结果楼主还是没懂。。。。
只 只你 Unregistered / Unconfirmed GUEST, unregistred user! 2007-08-10 #12 我是打印想一个月工资报表,实发的工资是这样显示如:1500.456,那我就想不动代码是他显示出这样子来1501,就是只要小数点第一位不是0的数,都要进1到个位数上。
C chinaking Unregistered / Unconfirmed GUEST, unregistred user! 2007-09-12 #15 在数据库里SELECT 出来时就用Ceil() 这个函数,只要有小数就进位
L levi Unregistered / Unconfirmed GUEST, unregistred user! 2007-09-12 #16 var a, b: Double; if b <> 0 then begin if ( A / B ) <> ( A div b) then Result := a div b + 1 else Result := a div b; end else Result := 0;
var a, b: Double; if b <> 0 then begin if ( A / B ) <> ( A div b) then Result := a div b + 1 else Result := a div b; end else Result := 0;
W wang0801 Unregistered / Unconfirmed GUEST, unregistred user! 2007-09-12 #17 上面说的不错了,你可以使用卷尾函数,如果你使用的是sqlserver数据库,直接使用CEILING函数,如果你使用其它的数据库,可以找对应的函数,因为数据库也比较多,所以只用sqlserver举个例子,一般的数据库都会有卷尾函数,四舍五入函数,舍尾函数,这个你可以从帮助中找到,不知道你是否明白;再者,如果你使用程序逐个控制,就可以比较取整后的数是否小于原来的数,如果小于就+1,这样就可以了
上面说的不错了,你可以使用卷尾函数,如果你使用的是sqlserver数据库,直接使用CEILING函数,如果你使用其它的数据库,可以找对应的函数,因为数据库也比较多,所以只用sqlserver举个例子,一般的数据库都会有卷尾函数,四舍五入函数,舍尾函数,这个你可以从帮助中找到,不知道你是否明白;再者,如果你使用程序逐个控制,就可以比较取整后的数是否小于原来的数,如果小于就+1,这样就可以了
Q qufo Unregistered / Unconfirmed GUEST, unregistred user! 2007-09-12 #18 这个算法有问题 我们的计算里,扣工资是向上取整,发工资是向下取整的。 在Oracle或Sql Server 里设算了。
X xxj0828 Unregistered / Unconfirmed GUEST, unregistred user! 2007-09-13 #19 只要小数点后第一位大于0就进位? var sal: Double; sal := 1500.1; if Frac(sal) >= 0.1 then sal := Integer(sal) + 1;
只要小数点后第一位大于0就进位? var sal: Double; sal := 1500.1; if Frac(sal) >= 0.1 then sal := Integer(sal) + 1;
只 只你 Unregistered / Unconfirmed GUEST, unregistred user! 2007-09-14 #20 谢谢各位了,我想用这个ceiling这个函数应该可以解决!分不多请笑纳