TC官方合作论坛

 找回密码
 立即注册
查看: 1695|回复: 2

补充TC5数学计算----整除

[复制链接]
发表于 2015-5-29 17:01:37 | 显示全部楼层 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 venski 于 2015-5-29 17:29 编辑

整除在很多情况下主要用于浮点的计算,,,有时候你会用得到.
整除不等同于除法.
整数的规律是,被除数和除数,当有小数的情况时,如果整数部分是偶数时,判断其小数是否为0.5,如果是0.5那么舍去小数部分取整,其它情况按照正常四舍五入规则.
如果被除数和除数的整数部分是奇数时,按正常四舍五入规则.

科普一下,在TC中
取整(5.8),结果为5,只取整数部分,不进行四舍五入.
转整型(5.8) 结果为6,按正常四舍五入规则运算.

以下是TC5整除的源代码

功能 数学整除(被除数,除数)
    变量 新被除数,新除数,计算结果
    变量 被除数整型部分=取整(被除数)
    变量 除数整型部分=取整(除数)
    如果(被除数整型部分%2==0)
       //偶数,如果小数部分为0.5,则舍去小数,其它小数大于0.5或小于0.5,则四舍五入规则
        变量 字符串型被除数=转字符型(被除数)
        如果(字符串查找(字符串型被除数,".")>-1)
            变量 小数数组=数组()
            变量 元素数量=字符串分割(字符串型被除数,".",小数数组)
            变量 取小数部分="0."&小数数组[1]
            变量 小数的值=转浮点型(取小数部分)
            如果(小数的值==0.5)
                新被除数=取整(被除数)
            否则
                新被除数=转整型(被除数)
            结束
        否则
            新被除数=被除数
        结束
    否则
        //奇数,正常四舍五入
        新被除数=转整型(被除数)
    结束

    如果(除数整型部分%2==0)
        //偶数,如果小数部分为0.5,则舍去小数,其它小数大于0.5或小于0.5,则四舍五入规则
        变量 字符串型除数=转字符型(除数)
        如果(字符串查找(字符串型除数,".")>-1)
            变量 小数数组=数组()
            变量 元素数量=字符串分割(字符串型除数,".",小数数组)
            变量 取小数部分="0."&小数数组[1]
            变量 小数的值=转浮点型(取小数部分)
            如果(小数的值==0.5)
                新除数=取整(除数)
            否则
                新除数=转整型(除数)
            结束
        否则
            新除数=除数
        结束
    否则
        //奇数,正常四舍五入
        新除数=转整型(除数)
    结束

    //计算结果后,取整操作,只取整数部分,不进行四舍五入
    计算结果=取整(新被除数/新除数)
    返回 计算结果
结束



以上纯属个人娱乐,如果有错误,请批评!




评分

参与人数 1威望 +5 金币 +5 收起 理由
18667006365 + 5 + 5 赞一个!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2015-5-29 17:30:30 | 显示全部楼层
调试输出(数学整除(8.5,2))
调试输出(数学整除(8.4,2))
调试输出(数学整除(8.51,2))
调试输出(数学整除(9.4,2.5))
调试输出(数学整除(9.5,2))
回复 支持 反对

使用道具 举报

发表于 2015-5-29 17:46:00 | 显示全部楼层
支持
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-6-9 21:53 , Processed in 0.032050 second(s), 23 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表