栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【javascript】基于Math.random生成确定区间随机数的方法

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【javascript】基于Math.random生成确定区间随机数的方法

一、简介

Math.random的生成结果是一个double型数据,其区间下限为0.0,上限为无限接近1.0。即[0,1)。 

二、需求

获取某区间内随机数。

三、方法

使用Math下的random随机数生成函数。

四、区间值实际应用 4.1浮点型 4.1.1[0,1)

代码如下:

function frandom(){
    return Math.random()
}
4.1.2[0,n)

代码如下:

function frandom(n){
    return Math.random()*n
}
4.1.3[m,n)

代码如下:

function frandom(m,n){
    return m+Math.random()*(n-m)
}
4.2整型-[x,y] 4.2.1[0,1]

代码如下:

function frandom(){
    return Math.floor(Math.random()*2)
}
4.2.2[0,n]

代码如下:

function frandom(n){
    return Math.floor(Math.random()*(n+1))
}
4.2.3[m,n]

代码如下:

function frandom(m,n){
    return Math.floor(m+Math.random()*(n-m+1))
}
4.3整型-[x,y) 4.3.1[0,1)

代码如下:

function frandom(){
    return Math.floor(Math.random())
}
4.3.2[0,n)

代码如下:

function frandom(n){
    return Math.floor(Math.random()*n)
}
4.3.3[m,n)

代码如下:

function frandom(m,n){
    return Math.floor(m+Math.random()*(n-m))
}
4.4整型-(x,y] 4.4.1(0,1]

代码如下:

function frandom(){
    return Math.floor(Math.random()+1);
}
4.4.2(0,n]

代码如下:

function frandom(n){
    return Math.floor(Math.random()*n+1);
}
4.4.3(m,n]

代码如下:

function frandom(m,n){
    return Math.floor(m+Math.random()*(n-m)+1);
}
4.5整型-(x,y) 4.5.1(0,1)

代码如下:

function frandom(){
    return undefined;
}
4.5.2(0,n)

代码如下:

function frandom(n){
    return Math.floor(1+Math.random()*(n-1));
}
4.5.3(m,n)

代码如下:

function frandom(m,n){
    return Math.floor(m+1+Math.random()*(n-m-1));
}
五、总结

由于端点的特殊性,因此为了匹配random的生成机制[0,,1),确保概率理论上尽可能稳定,仅使用Math.floor限制整型数据。至于为什么不用ceil或round,在文章“【python】关于Math.floor、Math.ceil以及Math.round应用在随机数中的区别分析_Evenurs的博客-CSDN博客”中分析。

附录 测试用html5源码




    

    Simulate Tools-By_Even-2022-7-25
    

    



    
        

仿真器

工具1

工具2

工具3

主要
刷新次数      
Copyright V1.02

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1026244.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号