一个水表倒转的问题
上期读数为 9995或者99995
本期读数为 10我该怎样得到当前使用的量

解决方案 »

  1.   

    那最大是多少呢?public class Test3 {    public final static double WATER_METER_MAX = 100000;
        
        public static void main(String[] args) {
            double last = 99995.3;
            double current = 10;
            System.out.println(calculate(last, current));
        }
        
        private static double calculate(double last, double current) {
            if(current < last) {
                current += WATER_METER_MAX;
            }        
            return current - last;
        }
    }
      

  2.   

    最大值-上次数值+10 这不就是使用数吗?
    为什么算不了呢?
    类型用BigDecimal就好