以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]表达式中的整除符号哪去了?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=2297)

--  作者:czy
--  发布时间:2009/4/5 15:33:00
--  
可能不支持吧。
如果不支持就只能用代码了。
--  作者:程兴刚
--  发布时间:2009/4/5 15:54:00
--  
表达式不支持"\\"整除,可以这样在表达式中实现:

Convert(a/b-0.5, \'System.Int64\')


刚才转晕了,还是要减去0.5!

[此贴子已经被作者于2009-4-5 16:06:49编辑过]

--  作者:程兴刚
--  发布时间:2009/4/5 16:11:00
--  
经过测试:

Convert(5/4-0.5, \'System.Int64\') = 1
Convert(5/3-0.5, \'System.Int64\') = 1
Convert(5/2.5-0.5, \'System.Int64\') = 2
Convert(5/2-0.5, \'System.Int64\') = 2
Convert(5/1.5-0.5, \'System.Int64\') = 3
...........

    达到要求,ok!
--  作者:程兴刚
--  发布时间:2009/4/5 18:53:00
--  
道理很简单,因为您只要整数,需要往下舍,不管尾数多少,比如:

           您的需求:         Convert()直接处理的结果       Convert()减去0.5后处理的结果:
              10.75  10              10.75   11                            10.75-0.5=10.25   10
              10.25  10               10.25  10                            10.25-0.5=9.75     10
              9.75    9                 9.75   10                              9.75-0.5=9.25     9

这样的示例更加易懂,关键是要理解:表达式Convert()是以四舍五入方式取整。
--  作者:miracle1300
--  发布时间:2014/6/14 23:18:00
--  

版主,我遇到的情况无法用您的办法解决,求解决办法:

问题:当某一位为奇数,且改位后面全为0时,如果除以与奇数位相同数量级的10的倍数,就无法实现取整。

例如:130除以10再取整应为13,按上述方法出来的实际结果为12,求解决办法;下附计算结果图

图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2014/6/15 9:49:00
--  

 回复8楼,新问题,可以重新开贴提问。

 

 请详细论述问题。最好上传例子。