zoukankan      html  css  js  c++  java
  • How to "round" numbers

    There is a versatile function in Ax to perform rounding operations: round.
    This function rounds the first real argument to the nearest multiple of the second real argument. So plenty of possibilities, for example

    round ( 1.2 , 1) equals 1
    round ( 1.2 , 5) equals 0
    round ( 6.4 , 5) equals 5
    round ( 7.5 , 5) equals 10
    round ( 1.2 , 0.5) equals 1
    round ( 1.12 , 0.1) equals 1.1

    If you don't want to work with the multiples of the second argument and instead just want to specify a number of decimals places to round, you can use decround.
    This functions rounds the first real argument to the number of decimals specified (second argument). So for example

    decround (1.2 , 0) equals 1
    decround (1.23 , 0) equals 1
    decround (1.23 , 1) equals 1.2
    decround (1.25 , 1) equals 1.3

    But the second argument can be negative as well. Like this:

    decround (123, -2) equals 100


    Now for rounding with a little twist: roundup.

    If you want to round a number up to the next real value, you can use roundup. This function is the same as the ceiling function from other environments.
    Same format as the previous round functions, needing 2 arguments.
    So for example

    roundup ( 1.23 , 0.1) give as result 1.3
    roundup ( 123 , 5) equals 125
    roundup ( 123.23 , 5) equals 125
    roundup ( 123.23 , 1) equals 124

    If that ain't enough, more rounding functions: rounddown and roundzero.
    Rounddown rounds your real value always down to the multiple of your second argument.
    While roundzero, as the function name says, rounds towards zero.
    The difference you can see in the next example:

    rounddown (-9 , 5) equals -10
    roundzero (-9 , 5) equals -5

     

    Jobs with Jimmy_round

    static void Jimmy_round(Args _args)
    {
    ;
        print roundUp(26, 5);//26 / 5 = 5.2(6 * 5 unit = 30)直接小数进位加1×单位差
        print 26/5;
        print round(10,4);//(10/4 = 2.5(3 * 4unit = 12)四舍五入×单位差
        print global::roundDown(10,4);//(10/4 = 2.5(2 * 4unit = 8))直接无视小数位×单位差
        print global::roundUpDec(10,4);//右移4位即0.0001,roundUp(10,0.0001) = 10 / 0.0001 *
        print roundUp(10,0.0001);//10 / 0.0001 = 10000,100000 * 0.0001 = 10
        print round(10,1.2);//10 / 1.2 = 8.3 , 8 * 1.2 = 9.6
    
    
        print    rounddown(12.86,5);//10
        print    roundup(12.86,5);//15
        print    rounddown(-9.1,-1);//-9
        print    rounddown(-9.1,1);//-10
        print    roundzero(-9,1);//-9
        print    roundzero(14.16,5);//10
    
        print    frac(12.86);//0.86 截取小数部分
        print    trunc(12.86);//12.00截取整数部分
    
        pause;
    
    }
    

  • 相关阅读:
    Mybatis和Spring整合也是能用BatchExecutor的
    与Spring整合的Mybatis没法真正使用BatchExecutor
    Mybatis和Spring整合后sqlsession啥时候关闭的
    Mybatis和Spring的整合原理
    Mybatis是怎么执行一条语句的
    8.11查询结果排序
    8.10、11(select分组和过滤)()
    8.7、8、9(select语句基本用法)(select语句基本运算符)(select聚合查询)
    8.4SQL(DML数据操作语言)-(insert插入数据)(updata更新数据),(delete数据)
    8.2数据库DDL语言(即数据库定义语言)(命名规则以及数据类型)
  • 原文地址:https://www.cnblogs.com/Fandyx/p/1790424.html
Copyright © 2011-2022 走看看