qq_15290009
热呛
采纳率100%
2016-07-08 03:05

帮我看看图片上的那句话的意思是这么写吗?

30
已采纳

图片说明
说房间长度/地板长度的出纵向用量 但是要是除不尽 就用进位法 不用四舍五入 末尾不到半块算半块 也就是 0-4 算 0.5 半块以上 算一块 也就是 5-9 算 1
比如说 5/10=0.5 结果算1 那要是 0.3/10那就是 0.03 那么结果 是0.05 但是图片上说明 按照半块来算 但是0.05 不是半块啊 我感觉是应该进 0.5 才算半块
上面说的是我的理解 不知道对不对 求大神指导 谢谢 不懂问我

下面代码

 function diban(){
    var fc = parseFloat($('#fangchang').val());
    var dc = parseFloat($('#dichang1').val());


    var zong = fc/dc;
     if (parseInt(zong) == zong) return zong;

    // 小数变整数.
    var len = 1;
    while (parseInt(zong) != zong) {
        zong = zong * 10;
        len *= 10;
    }

    // 取末位
    var last = Math.abs(len == 1 ? 0 : zong % 10);
    var d1 = zong - last;
    if (last >= 0 && last < 5) {
        d1 = d1 + 5;
    } else {
        d1 = d1 + 10;
    }

    d1 = d1 / len;  

    $('#zong').val(d1.toFixed(1))
    }
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • showbo GoCityPass新加坡曼谷通票 5年前
    
        function getNum(rooml, l) {//参数单位都要为cm
            var r = rooml / l;
            var arr = r.toString().split('.');
    
            if (arr.length > 1) {
                console.log('实际:' + r)
                arr[1] = parseFloat('0.'+arr[1]);
                r = parseInt(arr[0]) + (parseFloat(arr[1]) > 0.5 ? 1  : 0.5); //不整除
            }
            return r;
        }
        console.log(getNum(1000, 80))
        console.log(getNum(1190, 80))
        console.log(getNum(1000, 80))
        console.log(getNum(912, 80))
    
    点赞 6 评论 复制链接分享
  • u011606457 _1_1_7_ 5年前

    要是除不尽 就用进位法 不用四舍五入,就是Math.ceil()

    点赞 评论 复制链接分享