产生[n,m]之间的随机整数
来源:互联网 发布:淘宝 一件代发 编辑:程序博客网 时间:2024/05/16 16:18
这里利用Java的Math.random()方法,该方法产生[0,1)之间的随机数。
Java代码:
public static int random_between(int left, int right){ return (int)(Math.random()*(right - left + 1)) + left; }
注意:
该方法产生的是[n,m]之间的随机整数,n和m也是会产生的;
如果是[n,m),代码为(int)(Math.random()*(right - left)) + left;
如果是(n,m],代码为(int)(Math.random()*(right - left)) + left + 1;
如果是(n,m),代码为(int)(Math.random()*(right - left - 1)) + left + 1;
测试:
随机产生[10,20]之间的随机整数,在调用该方法产生的110000个数中,处于[10,20]区间内的任意一个数的个数大概是10000个。
测试代码如下:
public static void main(String[] args) { int total = 0; for (int a = 0; a < 10; a++) { int[] ramdonNums = new int[110000]; for (int i = 0; i < ramdonNums.length; i++) { ramdonNums[i] = random_between(10 ,20); } System.out.print("第"+ (a + 1) +"次产生数10的个数:"); int count = 0; for (int i : ramdonNums) { if(i == 10){ count++; } } total += count; System.out.println(count); } System.out.print("平均产生数10的个数:" + total/10); }
结果:
阅读全文
0 0
- 产生[n,m]之间的随机整数
- 随机产生一个(m,n)之间的实数
- 在整数n到m之间取得随机整数的java代码
- 产生n个小于等于m的不重复随机整数
- C/C++产生[m, n)之间不重复的随机序
- n个数中随机产生不重复的m个数
- C++产生m到n之间的随机数,产生0到100之间的随机数,以系统时间作为随机种子
- 产生 N 个10以内的随机整数
- Math产生m到n直接随机整数,以及判断属性是否属于原形属性
- 给定等概率随机产生1~M的随机函数, 实现等概率随机产生1~N的随机函数
- 随机生成0到n之间的m个数
- 随机生成零到n之间的m个数
- 随机生成0到n之间的m个数
- 用一个能产生[1,m]的随机函数, 实现一个能随机产生一个[1, n]的函数。
- 随机产生50个【10,50】之间的整数,统计各个整数出现的次数等
- 输入两个整数值n和m,求出整数1到n之间的和为m的所有组合
- 输入两个整数值n和m,求出整数1到n之间的和为m的所有组合
- 输入两个整数值n和m,求出整数1到n之间的和为m的所有组合
- RxJava文章
- freemaker String 常见操作语法
- go 语言第三方库parallel的并行使用
- 报到
- QRCode插件的使用(二维码识别与生成)
- 产生[n,m]之间的随机整数
- 解决win 7不是正版
- leetcode 299. Bulls and Cows
- 第二周函数参数传递的三种方式
- 二叉搜索树代码
- [LeetCode]15. 3Sum
- java nio file 内存映射文件
- 最新阿里大于短信验证码node koa2的实现
- 627. Swap Salary