n个随机数 和是固定的 js如何实现?


例如:5个随机数 和为10


先随机4个,然后10减除其他四个随机数,就可以了


因为题主要求不是很清楚,简单写了点,可重复,可为负数,全为整数

function test(counte, result) {
    function random(min, max) {
        return Math.floor(Math.floor(Math.random() * (max - min + 1)) + min);
    }
    var arr = [];
    var max = result;
    for (var i = 0; i < counte - 1; i++) {
        var temp1 = random(-result, result);
        var temp2 = random(-result, result);
        var ran1 = random(temp1, temp2);
        var ran2 = random(temp2, temp1);
        arr.push(random(ran1*2,ran2*2));
        max -= arr.slice(-1)[0];
    }
    arr.push(max);
    return arr;
}

//测试
test(5, 10)
test(5, 10)
test(5, 10)
test(5, 10)
test(5, 10)



相关阅读:
关于使用java语言实现七牛云分片上传
php-fpm出现exited on signal 11 (SIGSEGV)?
netty 的 Server 启动成功事件是哪个?
关于angular2 中控件验证的复用
Golang如何阻止signal传递给os/exec执行的命令
the value for the useBean class attribute xxx is invalid
android中webview无网络时怎么实现点击加载?
tsconfig如何配置多个输出目录?
Reactjs 0.13是否没有过滤XSS攻击 ?
如何删除或修改 Git Credential Manager (GCM)缓存的账号和密码
请问如何解决windows环境下phantomjs不支持flash的问题?
react单页面应用中,点击浏览器回退按钮,怎么能使回来的页面保持离开前的状态?
前端测试(UI Recorder)webdriver启动firefox报错
百度坐标批量转换后画直线的问题
关于vuex的疑惑
微信内置浏览器跳转session丢失问题
rails 用mongoid Model 自关联问题
jquery easyui中有组件可以让一个下拉框控制两个输入框吗?
为什么没有延迟执行呢
node-gyp的build过程出错



快速导航

Copyright © 2016 phpStudy |